Back to Adaptive Vision Library website

You are here: Start » Function Reference » IFM » IFM_GrabImage_WithTimeout

IFM_GrabImage_WithTimeout


Header:ThirdPartySdk.h
Namespace:avl

Captures an image from an ifm device.

Syntax

bool avl::IFM_GrabImage_WithTimeout
(
	Ifm_State& ioState,
	const avl::IFMCameraAddress& inAddress,
	int inTimeout,
	bool inGrab3dCoordinates,
	const atl::Optional<float>& inFrameRate,
	const atl::Optional<avl::IFMResolution::Type>& inResolution,
	const atl::Optional<avl::IFMTriggerMode::Type>& inTriggerMode,
	atl::Conditional<avl::Image>& outDistancesImage,
	atl::Conditional<avl::Image>& outAmplitudeImage,
	atl::Conditional<atl::Array<avl::Region>>& outInvalidRois,
	atl::Conditional<avl::Point3DGrid>& out3dCoordinates
)

Parameters

Name Type Range Default Description
ioState Ifm_State& Object used to maintain state of the function.
inAddress const IFMCameraAddress& Device identifying address
inTimeout int 0 - 100 Maximum time to wait for frame in milliseconds
inGrab3dCoordinates bool Enable 3d coordinates capturing
inFrameRate const Optional<float>& 0.017 - 300.0 NIL Sets the target frame rate in fps at which device should capture images
inResolution const Optional<IFMResolution::Type>& NIL Sets the resolution of output image
inTriggerMode const Optional<IFMTriggerMode::Type>& NIL Sets the trigger mode on device for capturing image
outDistancesImage Conditional<Image>& Captured distance image
outAmplitudeImage Conditional<Image>& Captured amplitude image
outInvalidRois Conditional<Array<Region>>& Region array with invalid pixels: INVALID, SATURATED, INCONSISTENT and LOW_SIGNAL.
out3dCoordinates Conditional<Point3DGrid>& Captured 3d coordinates

Remarks

Device driver software

This filter is intended to cooperate with a device using PMDSDK 2. In order to connect with the device, it is required to download PMDSDK 2.

PMDSDK 2 can be downloaded from the following website: https://www.ifm.com/us/en/search#!/infomaterialanddownloads?_type=infomaterialanddownloads&docType=download. Please download "O3D303 Software Development Kit"

After download you have to manually copy pmdaccess2.dll file to Adaptive Vision Studio main directory (usually located in Program Files). Alternatively you can add directory with this dll file to PATH environment variable

Additionally in inAddress input you will need to provide camera plugin and processing plugin file path.

It is recommended to disable DHCP in the device and using static IP address.

Multithreaded environment

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

See Also