This is again a concept question regarding the new project setup for version 5.7.
My very first expectation was that if I can define “modules”, these could contain a number of “plugins”, eg. if they are actually a set of tools relating to the same kind of job.
But then looking into both the examples code and the real PV production code, I have not find such a case yet - and I am having doubts if it can be done or not?
There are “modules” containing lots of classes, wether they are filters or just any other code where bringing them together into “modules” makes a lot of sense. But it looks like as soon as a class stands for a plugin, it has to have it’s “module” of it’s own - right?
In any case I see always a first level of subdirectory that contains the paraview.plugin file, and within that another subdirectory with the vtk.module, suggesting that “module is contained inside plugin”, not the other way round!
I also saw that the build system is always generating two shared libraries in such a case: one for the module, and one for the plugin. Maybe the “module” is the actually classes, compiled C++ code, while the “plugin” is more or less only the CS interface from the XML? In which case I could maybe define the two separately: one folder with the sources defining the “module”, and independently a number of folders with only CS XML files defining the “plugins”?
First question: should the latter work at all? Ok, I could try…
Second question: would it be good practice, meaning that the “1 plugin == 1 module” approach would be recommended?