Support plugins knowing where they live
Some plugins would like to know where they were loaded from so that they can access their own resources beside themselves. This is known to the
vtkPVPlugin instance via its
GetFileName() method (
nullptr in static plugins). There should be a new plugin interface type to call code with this location so that a plugin can know where it lives to access other resources beside itself.
paraview_plugin_add_self_awareness(CLASS_NAME <classname> INTERFACES <var> SOURCES <var>) (feel free to bikeshed the name)
This would basically just call
<classname>::SetPluginFileName(plugin->GetFileName()) (a static method). The plugin can then do whatever it wants with this information.