Impact Acquire SDK .NET
BasicDeviceSettings Class Reference

A base class for essential device related settings. More...

Inheritance diagram for BasicDeviceSettings:
[legend]

Public Member Functions

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

Public Attributes

readonly PropertyS basedOn = new PropertyS()
 A string property (read-only) containing the name of the setting this setting is based on.
 
readonly PropertyI imageRequestTimeout_ms = new PropertyI()
 An integer property defining the maximum time to wait for an image in ms.
 

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 base class for essential device related settings.

This class acts as a base class for essential device related settings. It only contains features that are available for every device.

Since
1.12.58
Examples
Callback.cs.

Constructor & Destructor Documentation

◆ BasicDeviceSettings() [1/2]

BasicDeviceSettings ( Device device)
inline

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

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

◆ BasicDeviceSettings() [2/2]

BasicDeviceSettings ( Device device,
String settingName )
inline

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

Parameters
[in]deviceA pointer to a mv.impact.acquire.Device object obtained from a mv.impact.acquire.DeviceManager object.
[in]settingNameThe name of the driver internal setting to access with this instance. A list of valid setting names can be obtained by a call to mv.impact.acquire.FunctionInterface.availableSettings, new settings can be created with the function mv.impact.acquire.FunctionInterface.createSetting

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>())
{
validateProperty(c);
}
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 frameworks 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 frameworks 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

◆ basedOn

readonly PropertyS basedOn = new PropertyS()

A string property (read-only) containing the name of the setting this setting is based on.

Since
1.12.67

◆ imageRequestTimeout_ms

readonly PropertyI imageRequestTimeout_ms = new PropertyI()

An integer property defining the maximum time to wait for an image in ms.

Attention
Since Impact Acquire 2.32.0 the default value for this property has been changed! See Calling 'imageRequestWaitFor' Never Returns / An Application No Longer Terminates After Upgrading To Impact Acquire 2.32.0 Or Greater for details.

When this property is set to 0 the timeout never elapses. If the timeout this property defines elapses the currently processed request will be returned to the user even if no data has been captured so far. The result structure of the request object should be examined in that case. Also this should be considered as an error from the users point of view in which case he should clean up the acquisition queue by calling mv.impact.acquire.FunctionInterface.imageRequestReset. Afterwards the capture loop can be restarted.

Note
It is crucial to understand that this is a timeout PER REQUEST! The timespan taken into account for the measurement starts when the driver begins to capture data into this particular buffer! So when queuing 4 buffers with a timeout of 3000 ms each and no data being transmitted by the device for any reason will cause the last buffer to time out 3000*4 = 12000 ms AFTER the buffer has been queued and the acquisition has been started as the driver will wait for up to 3 seconds for each buffer that is being processed. When the device sends data this timeout does not affect the runtime behaviour at all. No additional delay is introduced by it when everything runs as planned.
Examples
Callback.cs.

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
IEnumerable< Component > componentEnumerable
Returns an enumerator that iterates through the collection.
Definition ComponentCollection.cs:202
A base class to implement access to internal driver components.
Definition Component.cs:133

See the frameworks 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);
{
Console.WriteLine("{0}", cl.name);
}
IEnumerable< ComponentList > componentListEnumerable
Returns an enumerator that iterates through all the mv.impact.acquire.ComponentList elements in the c...
Definition ComponentCollection.cs:229
A class to provide access to component lists.
Definition ComponentList.cs:14

See the frameworks 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.