mv_plugin_control_def.h File Reference

Type definitions for plug-in 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 plug-in instance handle. More...
 
typedef struct _MVPluginConfig_t * MVPluginConfig_t
 Opaque data type which makes the plug-in 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
}
 Enumeration of access levels which may be granted to a plug-in instance. More...
 
enum  MVPluginCapabilities_t {
  eMVCapabilities_Null = 0x00,
  eMVCapabilities_Monitor = 0x01,
  eMVCapabilities_Control = 0x02
}
 Enumeration of plug-in capabilities. More...
 

Detailed Description

Type definitions for plug-in control.

Typedef Documentation

◆ MVPlugin_t

typedef struct _MVPlugin_t* MVPlugin_t

Opaque data type which represents a plug-in instance handle.

This handle is passed into the plug-in API functions and is used to access the plug-in 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 plug-in 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 plug-in instance's properties and configuration options.

Enumeration Type Documentation

◆ MVPluginAccessLevel_t

Enumeration of access levels which may be granted to a plug-in instance.

The access level of a plug-in instance is determined by the plug-in's capabilities (it may only ever be granted access to an API feature if the plug-in itself supports it) and the preferences of the user who may choose to deny a plug-in 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 plug-in capabilities.

Each plug-in 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 

Plug-in cannot use any restricted API features.

eMVCapabilities_Monitor 

Plug-in can process events.

eMVCapabilities_Control 

Plug-in 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.