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:
•On the models UI-336x/UI-536x and UI-337x/UI-537x: Enable/disable FPN correction. The FPN correction is enabled by default.
•On the models UI-313x, UI-314x, UI-316x, UI-318x: Enable/disable FPN correction and query the status of the FPN calibration and activate it.
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. |
Status flags from DEVICE_FEATURE_MODE_CAPS
IS_DEVICE_FEATURE_CAP_FPN_CORRECTION |
Fixed pattern noise correction is supported. |
UINT nMode = 0;
/* Get default FPN correction mode */
INT nRet = is_DeviceFeature(hCam, IS_DEVICE_FEATURE_CMD_GET_FPN_CORRECTION_MODE_DEFAULT,
(void*)&nMode, sizeof(nMode));
/* Get current FPN correction mode */
nRet = is_DeviceFeature(hCam, IS_DEVICE_FEATURE_CMD_GET_FPN_CORRECTION_MODE,
(void*)&nMode, sizeof(nMode));
/* Set FPN correction mode to hardware */
nMode = IS_FPN_CORRECTION_MODE_HARDWARE;
nRet = is_DeviceFeature(hCam, IS_DEVICE_FEATURE_CMD_SET_FPN_CORRECTION_MODE,
(void*)&nMode, sizeof(nMode));
// Get if loading the FPN correction data is enabled
UINT nFPNCorrectionDataLoading = IS_FPN_CORRECTION_DATA_LOADING_OFF;
nRet = is_DeviceFeature(m_hCam, IS_DEVICE_FEATURE_CMD_GET_FPN_CORRECTION_DATA_LOADING, (void*)&nFPNCorrectionDataLoading , sizeof(nFPNCorrectionDataLoading ));
if(nFPNCorrectionDataLoading == IS_FPN_CORRECTION_DATA_LOADING_ON)
{
// FPN correction data are loaded
}
else // (nFPNCorrectionDataLoading == IS_FPN_CORRECTION_DATA_LOADING_OFF)
{
// FPN correction data are not loaded
}
// Get the default value for loading the FPN correction data
UINT nFPNCorrectionDataLoadingDefault = IS_FPN_CORRECTION_DATA_LOADING_OFF;
nRet = is_DeviceFeature(m_hCam, IS_DEVICE_FEATURE_CMD_GET_FPN_CORRECTION_DATA_LOADING_DEFAULT, (void*)&nFPNCorrectionDataLoadingDefault , sizeof(nFPNCorrectionDataLoadingDefault ));
// Disable loading the FPN correction data
UINT nFPNCorrectionDataLoading = IS_FPN_CORRECTION_DATA_LOADING_OFF;
nRet = is_DeviceFeature(m_hCam, IS_DEVICE_FEATURE_CMD_SET_FPN_CORRECTION_DATA_LOADING, (void*)&nFPNCorrectionDataLoading , sizeof(nFPNCorrectionDataLoading ));
// Enable loading the FPN correction data
nFPNCorrectionDataLoading = IS_FPN_CORRECTION_DATA_LOADING_ON;
nRet = is_DeviceFeature(m_hCam, IS_DEVICE_FEATURE_CMD_SET_FPN_CORRECTION_DATA_LOADING, (void*)&nFPNCorrectionDataLoading , sizeof(nFPNCorrectionDataLoading ));