The VeriStand System Definition API allows you to edit a definition file. While it is mostly used as an offline API, it is also often used in custom devices code, notably thanks to the Item Reference to Pointer function that gives your access to the SystemStorage namespace, an internal representation of the SystemDefinitionAPI.
Unfortunately, there's a hiccup with that. If you want to edit existing nodes in your system definition, it works. If you want to add/remove nodes or sections (say, automatically add an alarm when you add a given custom device channel), the underlying API calls will work but you can't see the modifications in the System Definition tree: my alarm won't show up in the tree although it exists in memory. You'll have to manually save and reopen the *.nivssdf file for that. This can't be a decent workaround for end users.
Would NI R&D be nice enough to provide us with a public function that refreshes the tree (or parts of it if we feed the node reference)?
--Eric
Nb: I currently have a working solution, in case anyone urgently needs this feature.
Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.