Ok . I re-checked the Initialize function of the Repository.
1 It add's the given folder to the search list. ( default folder is \classes ?
- Multiple calls of NISE_CEF_Repository.lvclass:Initialize, allows different folders to be added to the list.
2 A scan is made for all .lvclass objects inside that folder and remembered in a FGLB - > "vi.lib\NI\Configuration Framework\class discovery singleton\class discovery singleton.vi"
3 When a Node / Object is called, it checks if the .lvclass was found in the given folder(s). So my suggestion for a dummy vi ( memory place holder ) is not going to work. The CEF expect the Nodes / Classes to be physical present on disk.
When my windows based software starts it uses forinstance the "Application Folder" path as a base , and adds the path to a "Classes" folder for a Windows based application. When I create an .exe it also creates the "classes" folder with the items inside.
On a RT the execution folder for development can be different then that of an executable. So if it is being used on RT then I would suggest a fixed path. There you can upload your classes to.
Has anyone created a SoftMotion axis configuration node or node hierarchy for CEF? Wasn't sure where to post this but figured this was my best shot - thanks!
It seems there ist a "memory leak" in the following VI:
"C:\Program Files\National Instruments\LabVIEW 2015\vi.lib\NI\Configuration Framework\hierarchy repo\WriteTree.vi"
For test purposes I call this VI every 5s. As a result LabVIEW increases memory from around 230MBytes (LabVIEW 2015 SP1) to over 1GByte within a day. LabVIEW crashes later on on some point...
Calling the VI "Request Deallocation" in the caller -VI of "WriteTree.vi" does not help.
Just wanted you to know. It does not really matter for my application (at the moment;-), as in normal case the VI is called only a few times (< 100) within a week and the server, on which my application runs, is booted once a week.
just spent some time with CEF, many things are quite clear, others not. Here are my questions:
I want to have some "categories" in my configuration automatically. Where shall I call the initialization for these classes?
At Edit.vi I found "subnodes category" item in the subnodes class cluster. How is this used?
In the sample project the channels may be moved also between groups. What do I have to do, that subnodes can just be "reordered" within a node?
Any help is really appreciated, it would accelerate my learing by far!
Hi mstoeger. The VI edit options VI:
Contains the options for the Menu that will be displayed when doing right click on an item.
The sub nodes class configures which nodes can be added to this nodes
And the edit options determine which options are available for the node.
And the categories will place the nodes inside of a category.
In other words, the classes that are supported to be dragged under a node are limited by the list you ad in sub node class. Now sub node class is the actual name of the class you are using. The menu name is what will be displayed when you have the list. And there is a 3rd array in the cluster that allows you to place everything in a category. Now this fields can be change programatically and you can see a working example of this in the DCAF Editor (you can download it from VI Package Manager.
You will only be able to drag items to a node that has the class available as a sub node.