mv_plugin_control_def.h File Reference

Type definitions for plugin control. More...

Typedefs

typedef enum MVSeverityLevel_t MVSeverityLevel_t
 
typedef enum MVPluginAccessLevel_t MVPluginAccessLevel_t
 
typedef enum MVPluginCapabilities_t MVPluginCapabilities_t
 
typedef struct _MVPlugin_t * MVPlugin_t
 Opaque data type which represents a plugin instance handle. More...
 
typedef struct _MVPluginConfig_t * MVPluginConfig_t
 Opaque data type which makes the plugin instance's configuration accessible. More...
 

Enumerations

enum  MVSeverityLevel_t {
  eMVSeverity_Debug = 0x00 ,
  eMVSeverity_Info = 0x01 ,
  eMVSeverity_Warning = 0x02 ,
  eMVSeverity_Error = 0x03 ,
  eMVSeverity_Critical = 0x04
}
 Enumeration of log message severity levels. More...
 
enum  MVPluginAccessLevel_t {
  eMVAccessLevel_Null = 0x00 ,
  eMVAccessLevel_MonitorOnly = 0x01 ,
  eMVAccessLevel_ControlOnly = 0x02 ,
  eMVAccessLevel_MonitorAndControl = 0x03 ,
  eMVAccessLevel_Force32 = 0x7FFFFFFF
}
 Enumeration of access levels which may be granted to a plugin instance. More...
 
enum  MVPluginCapabilities_t {
  eMVCapabilities_Null = 0x00 ,
  eMVCapabilities_Monitor = 0x01 ,
  eMVCapabilities_Control = 0x02 ,
  eMVCapabilities_Force32 = 0x7FFFFFFF
}
 Enumeration of plugin capabilities. More...
 

Detailed Description

Type definitions for plugin control.

Typedef Documentation

◆ MVPlugin_t

typedef struct _MVPlugin_t* MVPlugin_t

Opaque data type which represents a plugin instance handle.

This handle is passed into the plugin API functions and is used to access the plugin instance's state and to interface with the vision system by passing the handle on to the appropriate Communicator API functions.

◆ MVPluginConfig_t

typedef struct _MVPluginConfig_t* MVPluginConfig_t

Opaque data type which makes the plugin instance's configuration accessible.

MVPluginConfig_t is a pointer to an opaque data structure. It is obtained through MV_Plugin_GetConfig() and can be used to read the plugin instance's properties and configuration options.

Enumeration Type Documentation

◆ MVPluginAccessLevel_t

Enumeration of access levels which may be granted to a plugin instance.

The access level of a plugin instance is determined by the plugin's capabilities (it may only ever be granted access to an API feature if the plugin itself supports it) and the preferences of the user who may choose to deny a plugin instance access to certain API features.

Enumerator
eMVAccessLevel_Null 

No access to restricted API features.

eMVAccessLevel_MonitorOnly 

Access to events through MV_TryGetEvent().

eMVAccessLevel_ControlOnly 

Ability to queue actions through MV_QueueAction().

eMVAccessLevel_MonitorAndControl 

Combined access to events and actions.

◆ MVPluginCapabilities_t

Enumeration of plugin capabilities.

Each plugin must declare which API features with restricted access it is designed to use. This is done by combining the capability entries into a bitmask which is set to the Flags member of MVPluginInfo_t from MVInfo.

Enumerator
eMVCapabilities_Null 

Plugin cannot use any restricted API features.

eMVCapabilities_Monitor 

Plugin can process events.

eMVCapabilities_Control 

Plugin can control the vision system through actions.

◆ MVSeverityLevel_t

Enumeration of log message severity levels.

Enumerator
eMVSeverity_Debug 

Debug severity.

eMVSeverity_Info 

Info severity.

eMVSeverity_Warning 

Warning severity.

eMVSeverity_Error 

Error severity.

eMVSeverity_Critical 

Critical severity.