The VideoXpert OpsCenter provides a dynamic user interface that allows users to customize the workspace to suit their needs. Users can populate their workspace with windows which contain cells; these cells can contain video, plugins, or video and a plugin. These plugins may stand alone in the cell, or dock (above, below, left, or right) to the video in the cell. Stand-alone application plugins are referred to as "Content" plugins; those that share a cell with a video stream are referred to as "Overlay" plugins.
Implement a plugin as a class library (DLL) or an executable (EXE). Although plugins are intended to run within a host VxOpsCenter instance, it is possible to design the EXE to run standalone for debugging purposes.
Other interfaces allow a plugin to receive notifications from the VxOpsCenter and communicate with components, including:
- joystick changes
- cell notifications
- camera assignment
- video streaming
For more information regarding plugin architecture and design:
A plugin may be configured to be an Overlay. An Overlay plugin occupies the same cell as a video stream. An Overlay is intended to annotate the video stream in some way and can be developed to keep day in sync with live or playback video. The overlay may contain scrolling text, buttons, a title, flyout menu, and so on. Refer to the Overlay Plugin Guidelines for content and style details.
A plugin may be configured to be an Overlay. Other features of the plugin architecture and deployment environment include:
- Lightweight security. A plugin is required to provide a "key", issued by Pelco, when requested by the VxOpsCenter during launch.
- Discovery. Plugins are discovered by the VxOpsCenter using .NET reflection.
- Easy installation. To install a plugin, the DLL or EXE containing the class which inherits from IPlugin must be copied to a directory beneath the “Plugins” directory for the VxOpsCenter.
- Temporary data. A plugin may use a directory that it creates to store temporary data while the plugin is running.
- Persistent configuration. The VxOpsCenter supports saving plugin state as part of saving a workspace.
Refer to the documentation for details.