mv_error_def.h File Reference

Macro definitions for return and error codes. More...

#include <stdint.h>

Macros

Generic return codes
#define MV_CODE_UNKNOWN   0x00u
 A generic error has occurred.
 
#define MV_CODE_OK   0x01u
 The command was processed successfully.
 
#define MV_CODE_FAILED   0x02u
 The command failed for an unknown reason.
 
System error return codes
#define MV_CODE_INTERNAL_ERROR   0x10u
 A severe error occurred that caused the internal state of the vision system to become inconsistent. More...
 
#define MV_CODE_INV_LICENSE   0x11u
 A license is missing, could not be validated, or has expired.
 
#define MV_CODE_OUT_OF_MEM   0x12u
 The system has run out of memory.
 
#define MV_CODE_NOT_IMPLEMENTED   0x13u
 The command is not supported.
 
#define MV_CODE_TIMEOUT   0x14u
 The command could not be executed within the specified timeout interval. More...
 
#define MV_CODE_CONNECTION_LOST   0x15u
 The connection to the vision system has been lost.
 
#define MV_CODE_ACQ_DEV_LOST   0x16u
 The connection to the image acquisition device has been lost.
 
#define MV_CODE_IO_DEV_LOST   0x17u
 The connection to the I/O device has been lost.
 
#define MV_CODE_FILE_ACCESS   0x18u
 A file access failed. More...
 
Vision system processing return codes
#define MV_CODE_ACCESS_DENIED   0x30u
 The requested command cannot be executed because the caller is not eligible to do so at this time.
 
#define MV_CODE_ACTION_REJECTED   0x31u
 The requested action is not allowed in the current state of the vision system.
 
#define MV_CODE_ACTION_SUPERSEDED   0x32u
 The requested action will not finish as expected because it was superseded by another action which takes precedence.
 
#define MV_CODE_PREP_RECIPE   0x33u
 The application that is specified in the recipe file could not be loaded.
 
#define MV_CODE_UNPREP_RECIPE   0x34u
 The application could not be unloaded; the system failed to restore the Initialized state.
 
#define MV_CODE_BROKEN_PROMISE   0x35u
 The status of the requested command is unknown and will not be set in the future.
 
#define MV_CODE_DATAFLOW   0x36u
 The dataflow of the application that is specified in the requested recipe file has blocks or races.
 
#define MV_CODE_ACQ_TIMEOUT   0x37u
 The image acquisition timed out. More...
 
#define MV_CODE_ACQ_CONFLICTING_TIMEOUT   0x38u
 The image acquisition partially timed out. More...
 
#define MV_CODE_ACQ_ERROR   0x39u
 The image acquisition failed.
 
#define MV_CODE_ACQ_FRAME_DROPPED   0x40u
 An exposed frame has been dropped. More...
 
#define MV_CODE_ACQ_TRIGGER_MISSED   0x41u
 A trigger signal was missed by the image acquisition device. More...
 
Plug-in management return codes
#define MV_CODE_NO_PLUGINS_SPECIFIED   0x50u
 The Communicator could not be started because no plug-ins have been specified.
 
#define MV_CODE_PLUGIN_LOAD_FAILED   0x51u
 A plug-in could not be loaded because either the corresponding dynamic library could not be opened or it does not export the API functions to identify itself.
 
#define MV_CODE_CAPABILITY_NOT_SUPPORTED   0x52u
 A plug-in has been loaded with a capability that it does not support.
 
#define MV_CODE_API_NOT_IMPLEMENTED   0x53u
 A plug-in does not implement one of the required plug-in API functions.
 
#define MV_CODE_PLUGIN_NOT_REGISTERED   0x54u
 A plug-in API function could not be called because the plug-in is not registered properly.
 
#define MV_CODE_PLUGIN_RUNNING_STATE   0x55u
 A plug-in API function could not be called because it is only applicable when the plug-in is either currently running or not yet running.
 
#define MV_CODE_PLUGIN_INSTANTIATION   0x56u
 A plug-in could not be instantiated.
 
Plug-in configuration return codes
#define MV_CODE_INV_CONFIG_FILE   0x60u
 The plug-in configuration file could not be parsed.
 
#define MV_CODE_INV_CONFIG_VALUE   0x61u
 The value stored in a plug-in configuration file is invalid.
 
#define MV_CODE_CONFIG_SERIALIZATION   0x62u
 The (de-)serialization of a plug-in's configuration failed.
 
#define MV_CODE_USERPARAM_REDECL   0x63u
 An existing user parameter has been declared for a second time.
 
Unknown entity return codes
#define MV_CODE_UNK_ACTION   0x70u
 The specified action type is unknown.
 
#define MV_CODE_UNK_EVENT   0x71u
 The specified event type is unknown.
 
#define MV_CODE_UNK_PARAM   0x72u
 The specified parameter key is unknown.
 
#define MV_CODE_UNK_VALUE_TYPE   0x73u
 The specified value type is unknown.
 
#define MV_CODE_UNK_DATA_TYPE   0x74u
 The specified data type is unknown.
 
#define MV_CODE_UNK_RECIPE   0x75u
 The specified recipe ID is unknown.
 
#define MV_CODE_UNK_RESULT   0x76u
 The specified result ID is unknown. More...
 
#define MV_CODE_UNK_FILTER   0x77u
 The specified filter key is unknown.
 
#define MV_CODE_UNK_USERPARAM   0x78u
 The specified user parameter is unknown, i.e., it has not been exposed by adding it to the configuration description.
 
#define MV_CODE_UNK_DATA_COMPONENT   0x79u
 The data component referenced by the specified data component descriptor is unknown. More...
 
Invalid argument & parameter return codes
#define MV_CODE_INV_PARAM   0x90u
 The specified parameter key does not apply to the queried object.
 
#define MV_CODE_INV_VALUE   0x91u
 The specified value is invalid in this context.
 
#define MV_CODE_INV_VALUE_TYPE   0x92u
 The specified value type is invalid; check the documentation to ascertain whether scalars or arrays are supported in this context, respectively.
 
#define MV_CODE_INV_HANDLE   0x93u
 The specified handle to the entity that is being manipulated is invalid; ensure that the entity is initialized beforehand.
 
#define MV_CODE_INV_OBJECT   0x94u
 The object referenced by the specified handle is invalid.
 
#define MV_CODE_INV_RECIPE_INPUT   0x95u
 The provided recipe input values have been rejected by the application, despite their conformity to the recipe interface.
 
#define MV_CODE_INV_JOB_PARAMS   0x96u
 The provided job parameter tuple does not conform to the recipe interface, e.g., because the number of tuple elements does not match the number of recipe values or the conversion of the tuple elements to the data type of the respective recipe value is lossy.
 
#define MV_CODE_INV_RECIPE_OUTPUT   0x97u
 The result output values of the application do not match the expected recipe interface.
 
#define MV_CODE_INV_FILTER   0x98u
 The provided filter value is invalid for the specified filter key.
 
#define MV_CODE_INV_USER_DATA   0x99u
 No user data could be retrieved for this plug-in because none has been registered.
 
#define MV_CODE_INV_DATA_TYPE   0x9Au
 The specified data type is invalid; check the documentation to see which data types are allowed in this context.
 
#define MV_CODE_INV_CONSTRAINT   0x9Bu
 The provided constraint value is invalid for the specified constraint type.
 
#define MV_CODE_INV_PLUGIN_ID   0x9Cu
 A plug-in could either not be registered or accessed by the plug-in manager because its ID is invalid.
 
#define MV_CODE_INV_DATA_CONTAINER_TYPE   0x9Du
 The provided data container type is invalid.
 
#define MV_CODE_INV_DATA_COMPONENT_TYPE   0x9Eu
 The provided data component type is invalid.
 
Data manipulation return codes
#define MV_CODE_VALUE_IS_EMPTY   0xB0u
 The provided array value is empty.
 
#define MV_CODE_LIST_IS_EMPTY   0xB1u
 The specified list is empty.
 
#define MV_CODE_VALUE_TYPE_MISMATCH   0xB2u
 The value manipulation function which has been called does not match the type of the specified value.
 
#define MV_CODE_DATA_TYPE_MISMATCH   0xB3u
 The value manipulation function which has been called does not match the data type of the specified value.
 
#define MV_CODE_OUT_OF_RANGE   0xB4u
 The requested value is out of range for the specified data.
 
#define MV_CODE_UNSET_PARAM   0xB5u
 The parameter value to be retrieved has not been set.
 
#define MV_CODE_DATA_READ_MORE   0xB6u
 The size of the provided output buffer was insufficient to hold all of the data. More...
 
#define MV_CODE_DATA_PARAM_NOT_SUPPORTED   0xB7u
 The specified parameters for the data component cannot be satisfied. More...
 
#define MV_CODE_DATA_CONVERSION_FAILED   0xB8u
 The conversion of the data component to the requested type failed for an unknown reason. More...
 
eXtensible Programming Interface (XPI) return codes
#define MV_CODE_XPI_UNRES   0xC0u
 The API function that has been called is not supported by the current version of the Communicator. More...
 
#define MV_CODE_XPI_WRONG_MAJOR   0xC1u
 The XPI could not be initialized because its major version is not supported by this version of the Communicator.
 
#define MV_CODE_XPI_NO_INIT_FOUND   0xC2u
 The XPI could not be initialized because the Communicator lacks support for XPI. More...
 
Error severity

Error codes have an implied severity.

It is encoded in the four most significant bits of the 16-bit error code.

#define MV_SEVERITY_NONE   0x0000u
 
#define MV_SEVERITY_CRITICAL   0x1000u
 Critical errors necessitate a restart of the affected component.
 
#define MV_SEVERITY_ERROR   0x2000u
 Regular errors indicate that some operation failed recoverably.
 
#define MV_SEVERITY_WARNING   0x4000u
 Warnings indicate that an operation was carried out but may have been anomalous.
 
#define MV_SEVERITY_MASK   0xF000u
 Bit mask to extract the severity from an error code.
 
#define MV_ERROR_SEVERITY(error)   ((error) & MV_SEVERITY_MASK)
 Function-like macro which applies a bit mask to an error code to extract its severity.
 
#define MV_SEVERITY_OVERRIDE(error, sev)   (MV_ERROR_CODE(error) | MV_ERROR_COMPONENT(error) | MV_ERROR_SEVERITY(sev))
 Function-like macro to change the severity of a given error code whilst preserving other information.
 
Error affected component

Error codes have an implied affected component.

It is encoded in the 5th to 8th most significant bits of the 16-bit error code.

#define MV_COMPONENT_GENERAL   0x0000u
 
#define MV_COMPONENT_SYSTEM   0x0100u
 System errors pertain to the vision system and its state machine.
 
#define MV_COMPONENT_APPLICATION   0x0200u
 Application errors pertain to the vision application loaded as part of the recipe.
 
#define MV_COMPONENT_COMMUNICATOR   0x0400u
 Communicator errors pertain to the framework for loading and running plug-ins.
 
#define MV_COMPONENT_PLUGIN   0x0800u
 Plug-in errors are plug-in specific.
 
#define MV_COMPONENT_MASK   0x0F00u
 Bit mask to extract the component from an error code.
 
#define MV_ERROR_COMPONENT(error)   ((error) & MV_COMPONENT_MASK)
 Function-like macro which applies a bit mask to an error code to extract its affected component.
 
Error return code

Error codes "decorate" one of the MV_CODE_* return codes with additional information on the severity and the affected component.

The original return code is encoded in the eight least significant bits of the 16-bit error code.

#define MV_ERROR_MASK   0x00FFu
 Bit mask to extract the return code from a decorated error code.
 
#define MV_ERROR_CODE(error)   ((error) & MV_ERROR_MASK)
 Function-like macro which applies a bit mask to extract the return code from a decorated error code.
 
#define MV_IsCodeOk(code)   ((MV_ERROR_CODE(code)) == MV_CODE_OK)
 Function-like macro which can be used to test if a return code indicates success.
 
#define MV_IsCodeError(code)   ((MV_ERROR_CODE(code)) != MV_CODE_OK)
 Function-like macro which can be used to test if a return code indicates failure.
 
Vision System Error Codes

These error codes are emitted in the form of Error events by the vision system.

Critical errors will stop the vision system from responding and require user intervention. The vision system will typically transition to the Error state when a critical error is emitted if it is still able to do so.

Regular errors will typically not transition to the Error state but it is possible that an automatic transition to another state takes place in reaction to such an error or that a transition which would generally be expected as a result of the offending command did not take place.

Warnings are emitted to inform the user about certain anomalies in the execution of a command or action which were however not severe enough to cause it to fail as a whole. The vision system will typically execute the same state transitions which would generally be expected for nominal executions.

#define MV_CRIT_SYS_INTERNAL_ERROR   (MV_SEVERITY_CRITICAL | MV_COMPONENT_SYSTEM | MV_CODE_INTERNAL_ERROR)
 
#define MV_CRIT_SYS_OUT_OF_MEM   (MV_SEVERITY_CRITICAL | MV_COMPONENT_SYSTEM | MV_CODE_OUT_OF_MEM)
 
#define MV_CRIT_SYS_INV_LICENSE   (MV_SEVERITY_CRITICAL | MV_COMPONENT_SYSTEM | MV_CODE_INV_LICENSE)
 
#define MV_CRIT_SYS_UNPREP_RECIPE   (MV_SEVERITY_CRITICAL | MV_COMPONENT_SYSTEM | MV_CODE_UNPREP_RECIPE)
 
#define MV_ERR_SYS_ACCESS_DENIED   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_ACCESS_DENIED)
 
#define MV_ERR_SYS_BROKEN_PROMISE   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_BROKEN_PROMISE)
 
#define MV_ERR_SYS_PREP_RECIPE   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_PREP_RECIPE)
 
#define MV_ERR_SYS_NOT_IMPLEMENTED   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_NOT_IMPLEMENTED)
 
#define MV_ERR_SYS_ACQ_DEV_LOST   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_ACQ_DEV_LOST)
 
#define MV_ERR_SYS_ACQ_CONFLICTING_TIMEOUT   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_ACQ_CONFLICTING_TIMEOUT)
 
#define MV_ERR_SYS_ACQ_ERROR   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_ACQ_ERROR)
 
#define MV_ERR_SYS_IO_DEV_LOST   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_IO_DEV_LOST)
 
#define MV_ERR_SYS_UNK_RECIPE   (MV_SEVERITY_ERROR | MV_COMPONENT_SYSTEM | MV_CODE_UNK_RECIPE)
 
#define MV_WARN_SYS_UNK_RESULT   (MV_SEVERITY_WARNING | MV_COMPONENT_SYSTEM | MV_CODE_UNK_RESULT)
 
#define MV_WARN_SYS_ACTION_REJECTED   (MV_SEVERITY_WARNING | MV_COMPONENT_SYSTEM | MV_CODE_ACTION_REJECTED)
 
#define MV_WARN_SYS_ACTION_SUPERSEDED   (MV_SEVERITY_WARNING | MV_COMPONENT_SYSTEM | MV_CODE_ACTION_SUPERSEDED)
 
#define MV_WARN_SYS_ACQ_TIMEOUT   (MV_SEVERITY_WARNING | MV_COMPONENT_SYSTEM | MV_CODE_ACQ_TIMEOUT)
 
#define MV_WARN_SYS_ACQ_FRAME_DROPPED   (MV_SEVERITY_WARNING | MV_COMPONENT_SYSTEM | MV_CODE_ACQ_FRAME_DROPPED)
 
#define MV_WARN_SYS_ACQ_TRIGGER_MISSED   (MV_SEVERITY_WARNING | MV_COMPONENT_SYSTEM | MV_CODE_ACQ_TRIGGER_MISSED)
 
Application Error Codes

These error codes are also emitted in the form of Error events by the vision system.

In contrast to the above vision system errors, they indicate that the problem concerns the vision application which is executed as part of the recipe.

#define MV_CRIT_APP_OUT_OF_MEM   (MV_SEVERITY_CRITICAL | MV_COMPONENT_APPLICATION | MV_CODE_OUT_OF_MEM)
 
#define MV_ERR_APP_DATAFLOW   (MV_SEVERITY_ERROR | MV_COMPONENT_APPLICATION | MV_CODE_DATAFLOW)
 
#define MV_ERR_APP_INV_RECIPE_INPUT   (MV_SEVERITY_ERROR | MV_COMPONENT_APPLICATION | MV_CODE_INV_RECIPE_INPUT)
 
#define MV_ERR_APP_INV_RECIPE_OUTPUT   (MV_SEVERITY_ERROR | MV_COMPONENT_APPLICATION | MV_CODE_INV_RECIPE_OUTPUT)
 
#define MV_WARN_APP_INV_JOB_PARAMS   (MV_SEVERITY_WARNING | MV_COMPONENT_APPLICATION | MV_CODE_INV_JOB_PARAMS)
 
Communicator Error Codes

These error codes are emitted by the Communicator and printed to its log.

Critical Communicator errors will typically lead to the termination of the Communicator and all running plug-ins. It is dependent upon the specific error whether or not an attempt will be made to stop and close the plug-ins.

Regular Communicator errors may only produce an error log entry or cause a specific plug-in to not be started while leaving all other plug-ins unaffected.

#define MV_CRIT_COMM_OUT_OF_MEM   (MV_SEVERITY_CRITICAL | MV_COMPONENT_COMMUNICATOR | MV_CODE_OUT_OF_MEM)
 
#define MV_CRIT_COMM_CONNECTION_LOST   (MV_SEVERITY_CRITICAL | MV_COMPONENT_COMMUNICATOR | MV_CODE_CONNECTION_LOST)
 
#define MV_CRIT_COMM_NO_PLUGINS_SPECIFIED   (MV_SEVERITY_CRITICAL | MV_COMPONENT_COMMUNICATOR | MV_CODE_NO_PLUGINS_SPECIFIED)
 
#define MV_ERR_COMM_ACCESS_DENIED   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_ACCESS_DENIED)
 
#define MV_ERR_COMM_TIMEOUT   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_TIMEOUT)
 
#define MV_ERR_COMM_PLUGIN_LOAD_FAILED   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_PLUGIN_LOAD_FAILED)
 
#define MV_ERR_COMM_CAPABILITY_NOT_SUPPORTED   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_CAPABILITY_NOT_SUPPORTED)
 
#define MV_ERR_COMM_API_NOT_IMPLEMENTED   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_API_NOT_IMPLEMENTED)
 
#define MV_ERR_COMM_PLUGIN_NOT_REGISTERED   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_PLUGIN_NOT_REGISTERED)
 
#define MV_ERR_COMM_PLUGIN_RUNNING_STATE   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_PLUGIN_RUNNING_STATE)
 
#define MV_ERR_COMM_INV_CONFIG_FILE   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_INV_CONFIG_FILE)
 
#define MV_ERR_COMM_INV_CONFIG_VALUE   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_INV_CONFIG_VALUE)
 
#define MV_ERR_COMM_CONFIG_SERIALIZATION   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_CONFIG_SERIALIZATION)
 
#define MV_ERR_COMM_FILE_ACCESS   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_FILE_ACCESS)
 
#define MV_ERR_COMM_INV_PLUGIN_ID   (MV_SEVERITY_ERROR | MV_COMPONENT_COMMUNICATOR | MV_CODE_INV_PLUGIN_ID)
 
Plug-in Error Codes

Plug-in error codes are emitted by the Communicator and printed to its log when a plug-in returns a return code from one of its API functions which is different from MV_CODE_OK.

The return code is "decorated" with severity "ERROR" and component "PLUGIN" to form the error code. The respective return codes are plug-in-specific.

#define MV_CRIT_PLUGIN_GENERIC   (MV_SEVERITY_CRITICAL | MV_COMPONENT_PLUGIN | MV_CODE_UNKNOWN)
 
#define MV_CRIT_PLUGIN_OUT_OF_MEM   (MV_SEVERITY_CRITICAL | MV_COMPONENT_PLUGIN | MV_CODE_OUT_OF_MEM)
 
#define MV_CRIT_PLUGIN_INV_LICENSE   (MV_SEVERITY_CRITICAL | MV_COMPONENT_PLUGIN | MV_CODE_INV_LICENSE)
 
#define MV_ERR_PLUGIN_GENERIC   (MV_SEVERITY_ERROR | MV_COMPONENT_PLUGIN | MV_CODE_UNKNOWN)
 
#define MV_ERR_PLUGIN_INSTANTIATION   (MV_SEVERITY_ERROR | MV_COMPONENT_PLUGIN | MV_CODE_PLUGIN_INSTANTIATION)
 

Typedefs

typedef uint32_t MVCode_t
 Type alias used for return codes. More...
 
typedef uint32_t MVError_t
 Type alias used for error codes. More...
 

Detailed Description

Macro definitions for return and error codes.

The API distinguishes between two types of codes to signify different failure modes. Return codes (MVCode_t) merely encode the reason for a failure. Most of the Communicator API functions return an MVCode_t. The caller of those functions can react to the return code appropriately based on the context of the call.

Error codes on the other hand are emitted when a failure does not result as an immediate reaction to an API function call. Depending on the component where the error occurred, the error code will be either be delivered through an Error event (if it stems from the vision system or vision application executing on the former) or it will be handled as an exception inside of the Communicator where it is logged and may cause termination of the Communicator or individual plug-ins inside of it.

Error codes form a superset of return codes as they "decorate" the return code with additional information on the system component which raised the error and on its severity. The return codes itself merely encodes the reason and nature of the error. The return code makes up the less significant byte of the two-byte error code, with the affected component and severity sharing four bits each of the more significant byte:

| (4 bits) 12 | (4 bits) 8 | (8 bits) 0 |
\_____________/ \_____________/ \_____________________________/
Severity Component Return Code

Macro Definition Documentation

◆ MV_CODE_ACQ_CONFLICTING_TIMEOUT

#define MV_CODE_ACQ_CONFLICTING_TIMEOUT   0x38u

The image acquisition partially timed out.

In a multi-camera setup, the acquisition by some hardware-triggered cameras succeeded while the acquisition by other cameras timed out and it cannot be ensured that the image buffers of all cameras are in a consistent state.

◆ MV_CODE_ACQ_FRAME_DROPPED

#define MV_CODE_ACQ_FRAME_DROPPED   0x40u

An exposed frame has been dropped.

This may happen if the camera is consistently triggered faster than frames are processed.

◆ MV_CODE_ACQ_TIMEOUT

#define MV_CODE_ACQ_TIMEOUT   0x37u

The image acquisition timed out.

Perhaps a hardware triggered camera did not receive the trigger signal within the specified "grab_timeout" interval or the connection to a camera was lost during acquisition.

◆ MV_CODE_ACQ_TRIGGER_MISSED

#define MV_CODE_ACQ_TRIGGER_MISSED   0x41u

A trigger signal was missed by the image acquisition device.

The image acquisition device may have been overtriggered.

◆ MV_CODE_DATA_CONVERSION_FAILED

#define MV_CODE_DATA_CONVERSION_FAILED   0xB8u

The conversion of the data component to the requested type failed for an unknown reason.

Check the log of the vision system for further details.

◆ MV_CODE_DATA_PARAM_NOT_SUPPORTED

#define MV_CODE_DATA_PARAM_NOT_SUPPORTED   0xB7u

The specified parameters for the data component cannot be satisfied.

The specified values may be inconsistent, not supported, or outside of the supported range.

◆ MV_CODE_DATA_READ_MORE

#define MV_CODE_DATA_READ_MORE   0xB6u

The size of the provided output buffer was insufficient to hold all of the data.

More data is available to be read.

◆ MV_CODE_FILE_ACCESS

#define MV_CODE_FILE_ACCESS   0x18u

A file access failed.

Perhaps the file does not exist or you have insufficient permissions to access it.

◆ MV_CODE_INTERNAL_ERROR

#define MV_CODE_INTERNAL_ERROR   0x10u

A severe error occurred that caused the internal state of the vision system to become inconsistent.

A restart of the vision system is required.

◆ MV_CODE_TIMEOUT

#define MV_CODE_TIMEOUT   0x14u

The command could not be executed within the specified timeout interval.

Perhaps the vision system is not running or not connected.

◆ MV_CODE_UNK_DATA_COMPONENT

#define MV_CODE_UNK_DATA_COMPONENT   0x79u

The data component referenced by the specified data component descriptor is unknown.

The corresponding data may have been dropped from the vision system's result store and is no longer available.

◆ MV_CODE_UNK_RESULT

#define MV_CODE_UNK_RESULT   0x76u

The specified result ID is unknown.

The corresponding result may have been dropped from the vision system's result store and is no longer available.

◆ MV_CODE_XPI_NO_INIT_FOUND

#define MV_CODE_XPI_NO_INIT_FOUND   0xC2u

The XPI could not be initialized because the Communicator lacks support for XPI.

Upgrade to a newer version to be able to use this plug-in.

◆ MV_CODE_XPI_UNRES

#define MV_CODE_XPI_UNRES   0xC0u

The API function that has been called is not supported by the current version of the Communicator.

Upgrade to a newer version to take advantage of this new API.

Typedef Documentation

◆ MVCode_t

typedef uint32_t MVCode_t

Type alias used for return codes.

Return codes only occupy one byte.

◆ MVError_t

typedef uint32_t MVError_t

Type alias used for error codes.

Error codes occupy two bytes. The less significant byte holds the return code which encodes the reason for the error. The more significant byte encodes the affect component on its four least significant bits and the severity of the error on the remaining four most significant bits.