MIL_ID DigId, | //in |
MIL_INT64 InquireType, | //in |
MIL_CONST_TEXT_PTR FeatureName, | //in |
MIL_INT64 FeatureType, | //in |
void *UserVarPtr | //out |
This function allows you to directly inquire various GenICam standard feature naming convention (SFNC) features and manufacturer-specific features of the camera. When used with a GenICam SFNC-compliant camera, it allows you to directly inquire various manufacture-specific features specified with the camera's device description file (XML). Note that for the purpose of this function, a feature can also be of type category or command. Although category and command features lack a feature value, all other attributes of the feature can be inquired. For a list of standard category feature names, see the Standard Feature Naming Convention or your GenICam SFNC-compliant camera's documentation.
For Camera Link boards to work with this function, you must first configure and enable the GenICam CLProtocol module, using MdigControl() with M_GC_CLPROTOCOL. Note that this control type is only available after the required third-party vendor-supplied, standard compliant, CLProtocol library for your Camera Link camera is installed on your computer and M_GC_CLPROTOCOL_DEVICE_ID is set. For more information, refer to the Using MIL with GenICam section of Chapter 23: Grabbing with your digitizer.
There are also two ways to interactively inquire the camera's features in real-time. At design-time, you can use Matrox Intellicam's Feature Browser. At runtime, you can launch a more limited version of this Feature Browser, using MdigControl() with M_GC_FEATURE_BROWSER. Both versions of the Feature Browser provide a complete list of available feature names and associated possible values, as well as code snippets with the MIL functions and MIL constants associated with the settings selected, which you can copy to your MIL application code.
To control a camera's manufacturer-specific feature, use MdigControlFeature().
Specifies the identifier of the digitizer accessing the camera to inquire. This parameter must be given a valid digitizer identifier, previously allocated using MdigAlloc().
Specifies the type of information to inquire about the feature.
See the Parameter associations section for possible values that can be specified.
Specifies the name of the camera feature to inquire. Note that this parameter expects a case-sensitive string.
For specifying the name of the
feature
|
|||||||||||||||||||||||||||||||||||||||
Value | Description
|
MIL system-specific tooltip (†) |
|||||||||||||||||||||||||||||||||||||
MIL_TEXT("FeatureName") 1 |
Specifies the name of the feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
MIL_TEXT("Root") 1 |
Specifies to inquire the highest-level feature of the XML structure; this feature is of type category and typically, its subfeatures are also of type category. (more details...) |
† | c | j | k | m | o | p | q | r | s |
1 If you are passing the value in a variable, don't enclose it in MIL_TEXT().
Specifies the data type of the specified camera feature. If not inquiring the feature's value (using M_FEATURE_VALUE), set this parameter to M_DEFAULT.
For specifying the feature's
type
|
|||||||||||||||||||||||||||||||||||||||
Value | Description
|
MIL system-specific tooltip (†) |
|||||||||||||||||||||||||||||||||||||
M_DEFAULT |
Specifies the default data type. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_BOOLEAN |
Specifies that the feature value is expressed as a boolean. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_DOUBLE |
Specifies that the feature value is expressed as a floating-point. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_ENUMERATION |
Specifies that the feature value is expressed as an enumeration. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_INT64 |
Specifies that the feature value is expressed as a 64-bit integer. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_REGISTER |
Specifies that the feature is mapped to a multi-byte register. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_STRING |
Specifies that the feature value is expressed as a string. |
† | c | j | k | m | o | p | q | r | s |
Specifies the address of the variable in which to return the requested information.
See the Parameter associations section for possible values that can be returned.
The tables below list possible values for the InquireType parameter and possible values returned to the UserVarPtr parameter.
The following inquire types are used to specify the type of information about the feature to inquire and the data type returned.
For specifying the type of information to
inquire about the feature and the data type returned
|
|||||||||||||||||||||||||||||||||||||||
InquireType |
Description
|
MIL system-specific tooltip (†) |
|||||||||||||||||||||||||||||||||||||
UserVarPtr - Possible values returned |
|||||||||||||||||||||||||||||||||||||||
M_FEATURE_ACCESS_MODE |
Inquires whether the specified feature is implemented, available, readable, and/or writable. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
Bit-encoded access mode value |
Specifies an encoded value that details the access mode. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_CACHING_MODE |
Inquires whether a copy of the specified feature's value is stored in Host memory for faster access and retrieval. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_CACHING_MODE_NONE |
Specifies that the feature is not cachable. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_CACHING_MODE_WRITE_AROUND |
Specifies that feature values are written only to the camera, and the cache is updated the next time the feature value is inquired. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_CACHING_MODE_WRITE_THROUGH |
Specifies that when information is written to the camera, the cache is updated simultaneously. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_DEPRECATED |
Inquires whether the specified feature is deprecated and should no longer be used. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FALSE |
Specifies that the feature is not depreciated. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TRUE |
Specifies that the feature is depreciated. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_DESCRIPTION + |
Inquires the description of the specified feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_TEXT_CHAR |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_DISPLAY_NAME + |
Inquires the specified feature's display name. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_TEXT_CHAR |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_ENUM_ENTRY_COUNT |
Inquires the total number of enumeration entries in the supported enumerated list of the feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_ENUM_ENTRY_DISPLAY_NAME + n + |
Inquires the display name of the specified enumeration entry of the specified feature, where n is the index into the enumerated list. (more details...) |
† | o | ||||||||||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_TEXT_CHAR |
† | o | ||||||||||||||||||||||||||||||||||||
M_FEATURE_ENUM_ENTRY_NAME + n + |
Inquires the possible enumeration string entry to which the feature can be set, where n is the index into the enumerated list. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_TEXT_CHAR |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_ENUM_ENTRY_VALUE + n |
Inquires the possible enumeration integer value to which the feature can be set, where n is the index into the enumerated list. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_INCREMENT |
Inquires the feature's incremental value. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
|
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_MAX |
Inquires the maximum value possible for the feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
|
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_MIN |
Inquires the minimum value possible for the feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
|
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_NAME + |
Inquires the specified feature name. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_TEXT_CHAR |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_PRESENT |
Inquires whether the specified feature name is supported on your camera. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_BOOL |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_NO |
Specifies that the specified feature name is not present. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_YES |
Specifies that the specified feature name is present. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_REPRESENTATION |
Inquires the data display format for the feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_REPRESENTATION_BOOLEAN |
Specifies that the feature should be displayed as a checkbox. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_REPRESENTATION_HEX_NUMBER |
Specifies that the feature should be displayed as a hexadecimal value. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_REPRESENTATION_IPV4_ADDRESS |
Specifies that the feature should be displayed as an IP address in dotted decimal notation. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_REPRESENTATION_LINEAR |
Specifies that the feature should be displayed as a slider with the appropriate range shown. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_REPRESENTATION_LOGARITHMIC |
Specifies that the feature should be displayed as a slider with the appropriate logarithmic range shown. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_REPRESENTATION_MAC_ADDRESS |
Specifies that the feature should be displayed as a hexadecimal MAC address. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_REPRESENTATION_PURE_NUMBER |
Specifies that the feature should be displayed as edit text-box with a decimal display. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_SIZE |
Inquires the size of the feature value, in bytes. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_STREAMABLE |
Inquires whether the specified feature is streamable. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FALSE |
Specifies that the feature is not streamable. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TRUE |
Specifies that the feature is streamable. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_TOOLTIP + |
Inquires the tool tip of the specified feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_TEXT_CHAR |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_TYPE |
Inquires the specified feature type. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_BOOLEAN |
Specifies that the feature value is expressed as a boolean. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_CATEGORY |
Specifies that the feature is a category feature, and its value cannot be inquired. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_COMMAND |
Specifies that the feature is a command and its value cannot be inquired. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_DOUBLE |
Specifies that the feature value is expressed as a floating-point. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_ENUMERATION |
Specifies that the feature value is expressed as an enumeration. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_INT64 |
Specifies that the feature value is expressed as a 64-bit integer. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_REGISTER |
Specifies that the feature value is mapped to a multi-byte register. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_STRING |
Specifies that the feature value is expressed as a string. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_VALUE + |
Inquires the current value of the feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
|
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_VALUE_AS_STRING + |
Inquires the current value of the feature as a string. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: array of type MIL_TEXT_CHAR |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_VISIBILITY |
Inquires the visibility level of the specified feature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_VISIBILITY_BEGINNER |
Specifies that the feature is suggested for beginners. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_VISIBILITY_EXPERT |
Specifies that the feature is suggested for experts. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_VISIBILITY_GURU |
Specifies that the feature is suggested for advanced experts. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_FEATURE_VISIBILITY_INVISIBLE |
Specifies that the feature should not be shown. (more details...) |
† | c | j | k | m | o | p | q | r | s |
When the specified feature is of type category or "Root", you can use one of the following to inquire about its subfeatures. This is useful for enumerating the features of your camera.
For inquiring about the subfeatures of a
feature
|
|||||||||||||||||||||||||||||||||||||||
InquireType |
Description
|
MIL system-specific tooltip (†) |
|||||||||||||||||||||||||||||||||||||
UserVarPtr - Possible values returned |
|||||||||||||||||||||||||||||||||||||||
M_SUBFEATURE_COUNT |
Inquires the number of subfeatures that the specified category feature (node) has. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
Value |
Specifies the number of subfeatures. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_SUBFEATURE_NAME + n + |
Inquires the name of the specified subfeature, where n is the index of subfeature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_TEXT_CHAR |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_SUBFEATURE_TYPE + n |
Inquires the type of the specified subfeature, where n is the index of subfeature. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT64 |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_BOOLEAN |
Specifies that the feature value is expressed as a boolean. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_CATEGORY |
Specifies that the feature is a category. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_COMMAND |
Specifies that the feature is a command to be executed. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_DOUBLE |
Specifies that the feature value is expressed as a floating-point. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_ENUMERATION |
Specifies that the feature value is expressed as an enumeration. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_INT64 |
Specifies that the feature value is expressed as a 64-bit integer. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_REGISTER |
Specifies that the feature is mapped to a multi-byte register. |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
M_TYPE_STRING |
Specifies that the feature value is expressed as a string. |
† | c | j | k | m | o | p | q | r | s |
You can add the following value to the above-mentioned values to get the size of a string.
To inquire the size of a
string
|
|||||||||||||||||||||||||||||||||||||||
InquireType combination value |
Description
|
MIL system-specific tooltip (†) |
|||||||||||||||||||||||||||||||||||||
UserVarPtr - Possible values returned |
|||||||||||||||||||||||||||||||||||||||
M_STRING_SIZE |
Inquires the size of the string. (more details...) |
† | c | j | k | m | o | p | q | r | s | ||||||||||||||||||||||||||||
UserVarPtr data type info |
Data
type: MIL_INT |
† | c | j | k | m | o | p | q | r | s |
Header | Include mil.h. |
Library | Use mil.lib. |
DLL | Requires mil.dll. |