I have a dummy matrix driver with no data source connected. There is no matrix component used in the protocol, only source and destination tables. The crosspoints aren't saved, so after a restart a need to remove all my internal DCF connections.
The problem is that in below code the interfaces doesn't get loaded in the after startup QAction although the startupCheck boolean is set to true. Can someone explain me why?
When using the DcfHelper class there is a safety built into the removal so that it only removes items that were created by that element in the past.
If you want to remove connections that may have been created from a different location you have to set the 'force' boolean in the RemoveConnections method to true. That could be the reason for the behaviour you're seeing.
If the Startup check boolean is set to true, you should be guaranteed all connections & interfaces are present after startup, unless you're trying to manipulate an interface that was added at runtime.
Though as indicated bij Thijs in another answer. Always removing all information at startup is a bad idea. Manipulating DCF can be heavy so you should avoid a lot of removal & creation where it's not necessary. Better to leave the information and then remove/create/update as required.