Impact Acquire SDK .NET
ImageRequestControl Class Reference

A helper class to control the way an image request will be processed. More...

Inheritance diagram for ImageRequestControl:
[legend]

Public Member Functions

IEnumerable< TgetEnumerable< T > ()
 Returns an enumerator of a certain type that iterates through the collection.
 
IEnumerator< intGetEnumerator ()
 Returns an enumerator that iterates through the collection.
 
 ImageRequestControl (Device device)
 Constructs a new mv.impact.acquire.ImageRequestControl object.
 
 ImageRequestControl (Device device, String name)
 Constructs a new mv.impact.acquire.ImageRequestControl object.
 
void restoreDefault ()
 Restores the default for every component of this collection.
 

Public Attributes

readonly PropertyI imageCount = new PropertyI()
 An integer property defining the number of images to capture with each request.
 
readonly EnumPropertyI< TImageRequestControlModemode = new EnumPropertyI<TImageRequestControlMode>()
 The mode this object shall be operated in.
 
readonly PropertyI requestQueue = new PropertyI()
 An integer property defining to which request queue the image request will be sent.
 
readonly PropertyI requestToUse = new PropertyI()
 An integer property defining which request object shall be used for the next image request.
 
readonly PropertyI resultQueue = new PropertyI()
 An integer property defining to which result queue the resulting image will be sent after the acquisition.
 
readonly PropertyI setting = new PropertyI()
 An integer property defining which setting will be used for the acquisition.
 

Properties

IEnumerable< ComponentcomponentEnumerable [get]
 Returns an enumerator that iterates through the collection.
 
IEnumerable< ComponentListcomponentListEnumerable [get]
 Returns an enumerator that iterates through all the mv.impact.acquire.ComponentList elements in the collection.
 
int hObj [get]
 Returns a unique identifier for the component collection referenced by this object.
 

Detailed Description

A helper class to control the way an image request will be processed.

Examples
CaptureToUserMemory.cs.

Constructor & Destructor Documentation

◆ ImageRequestControl() [1/2]

ImageRequestControl ( Device device)
inline

Constructs a new mv.impact.acquire.ImageRequestControl object.

Parameters
[in]deviceA pointer to a mv.impact.acquire.Device object obtained from a mv.impact.acquire.DeviceManager object.

◆ ImageRequestControl() [2/2]

ImageRequestControl ( Device device,
String name )
inline

Constructs a new mv.impact.acquire.ImageRequestControl object.

Parameters
[in]deviceA pointer to a mv.impact.acquire.Device object obtained from a mv.impact.acquire.DeviceManager object.
[in]nameThe name of the driver internal image request control to access with this instance. A list of valid setting names can be obtained by a call to mv.impact.acquire.FunctionInterface.availableImageRequestControls, new image request controls can be created with the function mv.impact.acquire.FunctionInterface.createImageRequestControl

Member Function Documentation

◆ getEnumerable< T >()

IEnumerable< T > getEnumerable< T > ( )
inlineinherited

Returns an enumerator of a certain type that iterates through the collection.

This interface will allow to e.g. write code like this:

Info info = new Info(pDev);
foreach (Property c in info.getEnumerable<Property>())
{
}
A template class to represent 32 bit integer properties and 32 bit enumerated integer properties.
Definition EnumPropertyI.cs:61
A class to query various general information about the device, its driver and other information.
Definition Info.cs:10
A base class for properties.
Definition Property.cs:109

See the framework's documentation about the System.Collections.IEnumerable interface for more information.

Returns
An enumerator that iterates through the collection

◆ GetEnumerator()

IEnumerator< int > GetEnumerator ( )
inlineinherited

Returns an enumerator that iterates through the collection.

See the framework's documentation about the System.Collections.IEnumerable interface for more information.

Returns
An enumerator that iterates through the collection

◆ restoreDefault()

void restoreDefault ( )
inlineinherited

Restores the default for every component of this collection.

Calling this function will restore the default value for every component belonging to this collection.

Note
The caller must have the right to modify the component. Otherwise an exception will be thrown.

Member Data Documentation

◆ imageCount

readonly PropertyI imageCount = new PropertyI()

An integer property defining the number of images to capture with each request.

Note
This property will currently have no effect.

◆ mode

The mode this object shall be operated in.

Valid values for this property are defined by the enumeration mv.impact.acquire.TImageRequestControlMode.

This property can e.g. be used to prepare internal data structures without requesting a 'real' image from the hardware. This can be useful when the image dimensions must be known before the first image is captured.

Example

irc.mode.write( TImageRequestControlMode.ircmTrial ); // set to prepare mode
fi.imageRequestSingle( irc ); // request dummy image
int reqNr = fi.imageRequestWaitFor( 500 );
// waitFor will return as fast as possible. No 'real' image will be taken
// but a request object that contains a dummy image with the format, dimensions
// and other information will be returned that is (apart from the pixel data)
// similar to any 'real' image that would be captured with the current settings
This class and its functions represent an actual device detected by this interface in the current sys...
Definition Device.cs:91
EnumPropertyI< T > write(T value)
Writes one value to the property.
Definition EnumPropertyI.cs:449
The function interface to devices supported by this interface.
Definition FunctionInterface.cs:21
A helper class to control the way an image request will be processed.
Definition ImageRequestControl.cs:8
TImageRequestControlMode
Defines the behaviour of an mv.impact.acquire.ImageRequestControl.
Definition mvDriverBaseEnums.cs:3596

◆ requestQueue

readonly PropertyI requestQueue = new PropertyI()

An integer property defining to which request queue the image request will be sent.

This property defines the stream channel requests associated with this request control instance will be sent to.

The maximum value for this feature corresponds to the number of independent stream channels offered by the device. Only devices operated in interface layout mv.impact.acquire.TDeviceInterfaceLayout.dilGenICam may offer more than one stream channel. Therefore the default value and the default maximum and minimum value will be 0 for most devices.

Since
2.47.0

◆ requestToUse

readonly PropertyI requestToUse = new PropertyI()

An integer property defining which request object shall be used for the next image request.

This is an advanced feature that should only be used if needed. A value smaller than 0 will result in an automatic mode. This is the default behaviour and the driver will decide which buffer to use next then.

A request can only be sent to the driver once. Until this request is returned to the user it can't be sent again thus this property must be changed for each request if multiple requests shall be sent to the capture queue.

◆ resultQueue

readonly PropertyI resultQueue = new PropertyI()

An integer property defining to which result queue the resulting image will be sent after the acquisition.

◆ setting

An integer property defining which setting will be used for the acquisition.

This property defines a translation dictionary. It maps the name of the setting (the parameter passed to the function mv.impact.acquire.FunctionInterface.createSetting) to the actual underlying handle of the request. Therefore either the name or the handle of the setting can be used to set this property to the desired value.

Property Documentation

◆ componentEnumerable

IEnumerable<Component> componentEnumerable
getinherited

Returns an enumerator that iterates through the collection.

This interface will allow to e.g. write code like this:

Info info = new Info(pDev);
foreach (Component c in info.componentEnumerable)
{
Console.WriteLine("{0}", c.name);
}
String name
Returns the name of the component referenced by this object.
Definition ComponentAccess.cs:167
A base class to implement access to internal driver components.
Definition Component.cs:133

See the framework's documentation about the System.Collections.IEnumerable interface for more information.

Returns
An enumerator that iterates through the collection

◆ componentListEnumerable

IEnumerable<ComponentList> componentListEnumerable
getinherited

Returns an enumerator that iterates through all the mv.impact.acquire.ComponentList elements in the collection.

This interface will allow to e.g. write code like this:

Info info = new Info(pDev);
foreach (ComponentList cl in info.componentListEnumerable)
{
Console.WriteLine("{0}", cl.name);
}
A class to provide access to component lists.
Definition ComponentList.cs:14

See the framework's documentation about the System.Collections.IEnumerable interface for more information.

Returns
An enumerator that iterates through the collection

◆ hObj

int hObj
getinherited

Returns a unique identifier for the component collection referenced by this object.

This handle will always reference an object of type mv.impact.acquire.ComponentList.

Returns
A unique identifier for the component referenced by this object.