Type definitions for for plugin configuration. More...
Typedefs | |
| typedef enum MVPluginParameterPresentationProperty_t | MVPluginParameterPresentationProperty_t |
| typedef enum MVPluginParameterWidget_t | MVPluginParameterWidget_t |
| typedef enum MVPluginParameterConstraint_t | MVPluginParameterConstraint_t |
| typedef enum MVPluginConfigValidationErrorState_t | MVPluginConfigValidationErrorState_t |
| typedef struct _MVPluginUserParameterDescription_t * | MVPluginUserParameterDescription_t |
| Opaque data type which stores the plug-in-provided description of user configuration parameters. More... | |
| typedef struct _MVPluginConfigValidation_t * | MVPluginConfigValidation_t |
| Opaque data type which stores the result of a configuration parameter validation. More... | |
Type definitions for for plugin configuration.
| typedef struct _MVPluginConfigValidation_t* MVPluginConfigValidation_t |
Opaque data type which stores the result of a configuration parameter validation.
MVPluginConfigValidation_t is a pointer to an opaque data structure. It is passed as an argument to the MVValidate plug-in API function along with the configuration which is to be validated and initially does not indicate any validation errors. Plug-ins can apply whatever domain- specific validation logic and use the API functions in mv_plugin_config.h to store their validation result.
| typedef struct _MVPluginUserParameterDescription_t* MVPluginUserParameterDescription_t |
Opaque data type which stores the plug-in-provided description of user configuration parameters.
MVPluginUserParameterDescription_t is a pointer to an opaque data structure. It is passed as an argument to the MVExpose plug-in API function and initially represents an plug-in with no user-providable configuration parameters. Plug-ins can dynamically build their configuration interface by calling the API functions in mv_plugin_config.h to modify the parameter description.
Indicates the error state of a user parameter or plug-in configuration.
Set these states by calling MV_PluginConfigValidation_SetUserParameterErrorState() or MV_PluginConfigValidation_SetMessage() passing the enum value.
Enforces the parameter values to meet certain requirements.
Set these options by calling MV_PluginUserParameterDescription_ImposeConstraint() passing the enum value and an MVValue_t with the data structured as documented.
Note that imposing a constraint replaces any existing constraint.
| Enumerator | |
|---|---|
| eMVPluginParameterConstraint_Range | Enforces the values of the parameter to be in a specified range. Possible values are MV_Value_Arrays with either two or three numeric values. If two numeric values are given, they are interpreted as minimum and maximum value, respectively. If three numeric values are given, the third value is interpreted as the step size, i.e., the strictly positive number with which the parameter value is incremented or decremented in each step. All arguments must be of the same data type as the initial value. Passing something different than an Range constrained values are truncated in order to fulfill the |
| eMVPluginParameterConstraint_ValueList | Adds a list with possible values to the parameter. A value list is an exclusive list of possible parameter values of the same data type as the initial value. They can be shown in the interface, e.g., as a dropdown menu. Possible values are MV_Value_Arrays with any number of items. All values must be of the same data type as the initial value. The initial value must be included in the list. For arithmetic types, value list constrained values are rounded towards the nearest option in the list. Ambiguity is addressed with rounding towards zero. |
Specifies how the parameter is presented to the user in the configuration interface.
Set these properties by calling MV_PluginUserParameterDescription_SetPresentationProperty() passing the enum value and an MVValue_t with the data structured as documented.
Suggests a type of widget suitable for a given plug-in user parameter.
The default widget type used to represent a plug-in parameter will in general depend on the parameter's type and on the constraints imposed on it. However, sometimes multiple widgets are compatible with the constraints. For instance, a numeric parameter with a value range and a step size could be equally well represented by a spinbox or a slider widget. It is up to the configuration GUI (and its capabilities) to decide which widget will be used, but it is possible it express a preference by setting the property eMVPluginParameterPresentationProperty_PreferredWidget to the numeric value one of these enumerators.