02-15-2024 10:10 AM
Hi,
I'm getting some interesting behavior with cloneable modules and call by reference for a subsystem controller I'm developing. The subsystem controller is supposed to be able to start a selection of different cloneable "subsystem" modules, where each could have multiple clones. The controller will then control with a common API all subsystems.
I have based the dynamic launching implementation on the HSE-application template.
To my cloneable module i have added a "Load Module.vi"
Which gets called by the called by reference launcher:
Calling the launcher multiple time should start the module multiple times, but I only get a single instance of the module.
Which I can confirm with the modules API tester.
However when the API tester vi is open (just open, not running) and I call the launcher, through a launcher tester vi, multiple times, I do get multiple instances.
Somehow the API tester is loading essential parts of the clone registration into memory.
I could confirm that by adding the "Start Module.vi" within a diagram disable structure to my launcher tester vi.
Now the clone registration works and I can launch multiple instances of the cloneable module
What solutions are there for such behavior? Adding the "Start Module.vi" to my subsystem controller would add a static dependency, which I would like to avoid.
Is there a way to dynamically load the clone registration into memory?