USB 3.x GigE |
USB 3.x GigE |
Syntax
INT is_DeviceFeature (HIDS hCam, UINT nCommand, void* pParam, UINT cbSizeOfParam)
Description
Using is_DeviceFeature() you can configure special camera functions provided by specific uEye models:
•Querying and setting the timestamp configuration. For this purpose, you can use either the trigger pin or one of the two GPIOs.
Note: This function is supported by the following camera families: •USB 3 uEye CP Rev. 2 •GigE uEye CP Rev. 2 •GigE uEye CP •GigE uEye FA •GigE uEye LE •GigE uEye RE PoE •GigE uEye SE Rev. 4 •GigE uEye SE |
The nCommand input parameter is used to select the function mode. The pParam input parameter depends on the selected function mode. If you select functions for setting or returning a value, pParam contains a pointer to a variable of the UINT type. The size of the memory area to which pParam refers is specified in the cbSizeOfParam input parameter.
Input parameters
hCam |
Camera handle |
pParam |
Pointer to a function parameter, whose function depends on nCommand. |
cbSizeOfParam |
Size (in bytes) of the memory area to which pParam refers. |
Contents of the IS_TIMESTAMP_CONFIGURATION structure
INT |
s32Mode |
Mode to be set: •IS_RESET_TIMESTAMP_ONCE: Sets once the camera timestamp to 0. •IS_IGNORE_PARAMETER: Used when parts of an already set configuration are re-set. IS_IGNORE_PARAMETER must not be used during initial configuration. |
INT |
s32Pin |
Pin for setting the timestamp: •TIMESTAMP_CONFIGURATION_PIN_NONE: Timestamp is not reset. •TIMESTAMP_CONFIGURATION_PIN_TRIGGER: Timestamp is set by signal on the trigger pin. •TIMESTAMP_CONFIGURATION_PIN_GPIO_1: Timestamp is set by signal on GPIO 1. •TIMESTAMP_CONFIGURATION_PIN_GPIO_2: Timestamp is set by signal on GPIO 2. |
INT |
s32Edge |
The timestamp is set by rising or falling edge: •TIMESTAMP_CONFIGURATION_EDGE_FALLING •TIMESTAMP_CONFIGURATION_EDGE_RISING |
Status flags from DEVICE_FEATURE_MODE_CAPS
IS_DEVICE_FEATURE_CAP_TIMESTAMP_CONFIGURATION |
Configuration of the timestamp (e.g. reset the timestamp to 0 at a signal on the trigger pin). |
IS_TIMESTAMP_CONFIGURATION timestampConfiguration;
/* Returns the current timestamp configuration */
nRet = is_DeviceFeature(hCam, IS_DEVICE_FEATURE_CMD_GET_TIMESTAMP_CONFIGURATION,
(void*) ×tampConfiguration, sizeof(timestampConfiguration));
/* A falling edge on the trigger pin will reset the device timestamp once. All 3 parameters will be set at the same time */
timestampConfiguration.s32Mode = IS_RESET_TIMESTAMP_ONCE;
timestampConfiguration.s32Edge = TIMESTAMP_CONFIGURATION_EDGE_FALLING; timestampConfiguration.s32Pin = TIMESTAMP_CONFIGURATION_PIN_TRIGGER;
nRet = is_DeviceFeature(hCam, IS_DEVICE_FEATURE_CMD_SET_TIMESTAMP_CONFIGURATION,
(void*) ×tampConfiguration, sizeof(timestampConfiguration));
/* Set only the edge */
timestampConfiguration.s32Mode = IS_IGNORE_PARAMETER;
timestampConfiguration.s32Edge = TIMESTAMP_CONFIGURATION_EDGE_RISING;
timestampConfiguration.s32Pin = IS_IGNORE_PARAMETER;
nRet = is_DeviceFeature(hCam, IS_DEVICE_FEATURE_CMD_SET_TIMESTAMP_CONFIGURATION,
(void*)×tampConfiguration, sizeof(timestampConfiguration));
/* Set only the pin */
timestampConfiguration.s32Mode = IS_IGNORE_PARAMETER;
timestampConfiguration.s32Edge = IS_IGNORE_PARAMETER;
timestampConfiguration.s32Pin = TIMESTAMP_CONFIGURATION_PIN_GPIO_1;
nRet = is_DeviceFeature(hCam, IS_DEVICE_FEATURE_CMD_SET_TIMESTAMP_CONFIGURATION,
(void*)×tampConfiguration, sizeof(timestampConfiguration));
/* Set only the mode */
timestampConfiguration.s32Mode = IS_RESET_TIMESTAMP_ONCE;
timestampConfiguration.s32Edge = IS_IGNORE_PARAMETER;
timestampConfiguration.s32Pin = IS_IGNORE_PARAMETER;
nRet = is_DeviceFeature(hCam, IS_DEVICE_FEATURE_CMD_SET_TIMESTAMP_CONFIGURATION,
(void*)×tampConfiguration, sizeof(timestampConfiguration));