ItalaApiC  1.3.3
Functions
Device

Functions

ITALA_API_C ItalaError DEV_GetNodeMap (H_DEVICE hDevice, H_NODEMAP *phNodeMap)
 
ITALA_API_C ItalaError DEV_GetTLDeviceNodeMap (H_DEVICE hDevice, H_NODEMAP *phNodeMap)
 
ITALA_API_C ItalaError DEV_GetDatastreamNodeMap (H_DEVICE hDevice, H_NODEMAP *phNodeMap)
 
ITALA_API_C ItalaError DEV_StartAcquisition (H_DEVICE hDevice)
 
ITALA_API_C ItalaError DEV_StartAcquisitionEx (H_DEVICE hDevice, uint64_t bufferCount, uint64_t numFrames)
 
ITALA_API_C ItalaError DEV_StopAcquisition (H_DEVICE hDevice)
 
ITALA_API_C ItalaError DEV_GetNextImage (H_DEVICE hDevice, int64_t timeout, H_IMAGE *phImage)
 
ITALA_API_C ItalaError DEV_EnableEvents (H_DEVICE hDevice)
 
ITALA_API_C ItalaError DEV_DisableEvents (H_DEVICE hDevice)
 
ITALA_API_C ItalaError DEV_RegisterEventCallback (H_DEVICE hDevice, EventCallback eventCallback, void *pContext)
 
ITALA_API_C ItalaError DEV_DeregisterEventCallback (H_DEVICE hDevice)
 
ITALA_API_C ItalaError DEV_GetTimestampFrequency (H_DEVICE hDevice, uint64_t *pTimestampFrequency)
 
ITALA_API_C ItalaError DEV_GetInfo (H_DEVICE hDevice, DeviceInfo *pDeviceInfo)
 
ITALA_API_C ItalaError DEV_Dispose (H_DEVICE hDevice)
 

Detailed Description

All the methods related to the managment of the devices.

Function Documentation

◆ DEV_GetNodeMap()

ITALA_API_C ItalaError DEV_GetNodeMap ( H_DEVICE  hDevice,
H_NODEMAP *  phNodeMap 
)

Get the GenICam nodemap of the physical device. The nodemap instance is accessible via GenApi NODEMAP_ functinos and allows the user to configure the behaviour of the camera.

Parameters
[in]hDeviceHandle to Device instance.
[out]phNodeMapHandle to NodeMap instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_GetTLDeviceNodeMap()

ITALA_API_C ItalaError DEV_GetTLDeviceNodeMap ( H_DEVICE  hDevice,
H_NODEMAP *  phNodeMap 
)

Get the GenICam nodemap of GenTL's Local Device module. The nodemap instance is accessible via GenApi NODEMAP_ functinos and allows the user to configure the behaviour of the module.

Parameters
[in]hDeviceHandle to Device instance.
[out]phNodeMapHandle to NodeMap instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_GetDatastreamNodeMap()

ITALA_API_C ItalaError DEV_GetDatastreamNodeMap ( H_DEVICE  hDevice,
H_NODEMAP *  phNodeMap 
)

Get the GenICam nodemap of GenTL's Datastream module. The nodemap instance is accessible via GenApi NODEMAP_ functinos and allows the user to configure the behaviour of the module.

Parameters
[in]hDeviceHandle to Device instance.
[out]phNodeMapHandle to NodeMap instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_StartAcquisition()

ITALA_API_C ItalaError DEV_StartAcquisition ( H_DEVICE  hDevice)

Starts a continuous acquisition with a default count of 16 image buffers (so a maximum of 16 images can be grabbed and kept simultaneously without disposing them).

Parameters
[in]hDeviceHandle to Device instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_StartAcquisitionEx()

ITALA_API_C ItalaError DEV_StartAcquisitionEx ( H_DEVICE  hDevice,
uint64_t  bufferCount,
uint64_t  numFrames 
)

Starts the image acquisition on the device. A number of buffers equal to bufferCount is allocated and kept in the acquisition engine input pool. Internally, the acquisition engine picks buffers from the input pool and fills them with new data, before pushing them to the output queue, in accordance with the policy defined by the GenTL SFNC standard feature "StreamBufferHandlingMode" (configurable through the Datastream nodemap). The acquisition engine keeps running until numFrames frames are pushed to the output queue (i.e. until the specified amount of frames is available to the user).

Parameters
[in]hDeviceHandle to Device instance.
[in]bufferCountNumber of buffers to be used for acquisition
[in]numFramesNumber of frames to be acquired. If 0, the acquisition runs continuously until DEV_StopAcquisition is called.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_StopAcquisition()

ITALA_API_C ItalaError DEV_StopAcquisition ( H_DEVICE  hDevice)

The image acquisition is stopped and all the resources deallocated.

Parameters
[in]hDeviceHandle to Device instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_GetNextImage()

ITALA_API_C ItalaError DEV_GetNextImage ( H_DEVICE  hDevice,
int64_t  timeout,
H_IMAGE *  phImage 
)

Grabs the first available image buffer in the output queue of the acquisition engine. If the specified timeout expires, a TimeoutException occurs. When an image buffer is grabbed, it's removed from the acquisition engine and delivered to the client code so that its data can be used.

Parameters
[in]hDeviceHandle to Device instance.
[in]timeoutthe amount of time in millisecond to wait for a new image
[out]phImageHandle to Image instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_EnableEvents()

ITALA_API_C ItalaError DEV_EnableEvents ( H_DEVICE  hDevice)

Starts the event functionality. The event listening thread is started and ItalaApiC waits for incoming events from the device (which requires a separate configuration via GenApi for event initialization).

Parameters
[in]hDeviceHandle to Device instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_DisableEvents()

ITALA_API_C ItalaError DEV_DisableEvents ( H_DEVICE  hDevice)

Stops the event functionality. The event listening thread is stopped.

Parameters
[in]hDeviceHandle to Device instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_RegisterEventCallback()

ITALA_API_C ItalaError DEV_RegisterEventCallback ( H_DEVICE  hDevice,
EventCallback  eventCallback,
void *  pContext 
)

Subscribes an EventCallback instance to the current device. The implementation must be provided by the client code.

Parameters
[in]hDeviceHandle to Device instance.
[in]eventCallbackCallback to execute.
[in]pContextContext of the callback.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_DeregisterEventCallback()

ITALA_API_C ItalaError DEV_DeregisterEventCallback ( H_DEVICE  hDevice)

Removes the device event handler instance registered.

Parameters
[in]hDeviceHandle to Device instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_GetTimestampFrequency()

ITALA_API_C ItalaError DEV_GetTimestampFrequency ( H_DEVICE  hDevice,
uint64_t *  pTimestampFrequency 
)

Get the tick frequency of the device timestamp counter in ticks per second. The counter is used, for instance, to assign timestamps to the individual acquired images.

Parameters
[in]hDeviceHandle to Device instance.
[out]pTimestampFrequencyTimestamp frequency in tick per seconds.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_GetInfo()

ITALA_API_C ItalaError DEV_GetInfo ( H_DEVICE  hDevice,
DeviceInfo pDeviceInfo 
)

Get the information of the device.

Parameters
[in]hDeviceHandle to Device instance.
[out]pDeviceInfoInformation struct containing all the info of the device.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.

◆ DEV_Dispose()

ITALA_API_C ItalaError DEV_Dispose ( H_DEVICE  hDevice)

Dispose the instance of the Device.

Parameters
[in]hDeviceHandle to Device instance.
Returns
ItalaError the error code; return ItalaErrorSuccess (0) if no errors occures.