The browser plugins are a subclass of the CBPMPluginManager.lvclass (see also the class hierarchy of the browser). During program start-up, the browser screens for .lvclasses in the extension/Plugin folder and tests, if thefound LabView classes are a real "plugin-child". If this is the case, the plugin is registered.
The registered plugins are initialized directly after registration by invoking the dynamic dispatch function CPPMInitPlugin. From every plugin, and instance is generated during registration. An array of references is stored in the CBPMPluginInstances. The index-number of the array with the instance is also stored in the registration information.
You can use the plugin manager to see the installed plugins and adjust their preferences.
The registration information of the plugin is a cluster with following fields:
Type of plugin
Display-name of plugin
Description of the Plugin. Displayed in the the plugin manager
Path to plugin class, filled during registration
Version of plugin
Relative path of the main vi of the plugin to the plugin class
Flag, if the plugin must be installed
Unique identifier. Use name and creation date. For viewportTypes: The UniqueID must be the name of the viewport type
Author of the plugin
Institution of the Author
HTML adress for the plugin help
Cluster of booleans
OS compatibility of plugin
Index pointing to the plugin instance reference in the plugin array stored in CBPMPluginInstances
Types of plugins
The plugin type defines:
- Where the plugin can be invoked from the user interface
- How it is invoked. Viewports have a different start-up mechanism
A plugin for data registration or direct data measurement from a measurement instrument
A plugin displayed and invoked from the tools menu
Handles the data type displayed. It defines the data-type loaded by importers and displayed by viewports. It also handles the preview generation of a specific type during import, as well as provides data-type specific functions.
A plugin providing a viewport, e.g. Display of data. Note every viewport must be associated with a viewportType, and is loaded as a subclass of a the associated viewport type definition.The viewport also saves a preferences for every data-set about the display settings.
Data importer plugin. Note that importers must be associated by viewportTypes
Plugin for database collection. Normally openBIS
Minimal overwrite functions
Provides the plugin information used for plugin registration
Provides the preferences GUI displayed in the plugging manager sub-panel
Starts the main plugin program stored in the MainPathField
Initializes the plugin. This is done during the plugin registration process
The plugin info is provided as an overwrite function named CBPMPluginInfo.vi. This function returns a struct with following contents:
Type of plugin
Display name of plugin
Description of plugin
Pathn to plugin class. Do not use. Will be filled during plugin registration.
Relative main path to main plugin program (obsolete?)
Indicates, if it is a standard plugin belonging to a minimal installation
Unique identifier of plugin
Authors e-mail adress
Static adress to plugin help-page
Cluster of booleans providing os compatibility information
Plugin-type specific information
- A copy of the class hierarchy is passed to the collection plugin
- Use CBPMStartMain to start the collection
- A new menu is displayed in the tools pop-up menu
- Use CBPMStartMain