Communication between plugins


@chart3388 When we talked, one of the questions that came up was how plugins might communicate with each other.

ParaView exposes a method for this on the client (not server) side inside Qt/Core/pqApplicationCore.h… plugins can call the registerManager(const QString& function, QObject* manager); method to register anything that inherits QObject. Then other plugins can call the application-core’s QObject* manager(const QString& function); method to fetch it based on the string name.


There was also a question about how to programmatically load plugins. A test in SMTK (smtk/extension/paraview/pluginsupport/testing/python/ demonstrates how to do this in python. The corresponding C++ routines can be determined by simply tracing which C++ calls the python wrappings make.