ICube_GrabImage_WithTimeout


Captures an image from an ICube camera; returns Nil if no frame comes in the specified time.

Syntax

C++
Python
 
def ICube_GrabImage_WithTimeout(
	state: ICube_State,
	/,
	*,
	inDeviceID: int | None = None,
	inInputQueueSize: int = 10,
	inGrabbingMode: ICubeGrabMode = ICubeGrabMode.RAW,
	inTimeout: int = 100,
	inResolutionMode: ICubeResolutionMode | None = None,
	inSkippingMode: ICubeBinSkip | None = None,
	inBinningMode: ICubeBinSkip | None = None,
	inExposureTime: float | None = None,
	inRoi: Box | None = None
)
-> (
	outResult: bool,
	outImage: Image | None,
	outFrameID: int | None
)

Parameters

Name Type Range Default Description
Input will be modified ioState ICube_State
Input value inDeviceID int | None 0 - None Index of a camera
Input value inInputQueueSize int 1 - 1000 10
Input value inGrabbingMode ICubeGrabMode ICubeGrabMode.RAW
Input value inTimeout int 0 - 100 Maximum time to wait for frame in milliseconds
Input value inResolutionMode ICubeResolutionMode | None None
Input value inSkippingMode ICubeBinSkip | None None
Input value inBinningMode ICubeBinSkip | None None
Input value inExposureTime float | None 0.0 - None
Input value inRoi Box | None None Range of pixels to be processed
Output value outImage Image | None Captured frame
Output value outFrameID int | None Captured frame ID

Multithreaded environment

This function is not guaranteed to be thread-safe. When used in multithreaded environment, it has to be manually synchronized.