Impact Acquire SDK .NET
|
A class for accessing general settings that control the overall behaviour of a device driver. More...
Public Member Functions | |
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. | |
SystemSettings (Device device) | |
Constructs a new mv.impact.acquire.SystemSettings object. | |
Public Attributes | |
readonly PropertyI | acquisitionIdleTimeMax_ms = new PropertyI() |
An integer property defining the maximum time in ms the driver waits for new requests being queued until streaming by the device will automatically be stopped. | |
readonly EnumPropertyI< TAcquisitionMode > | acquisitionMode = new EnumPropertyI<TAcquisitionMode>() |
An enumerated integer property defining the acquisition mode of the device. | |
readonly EnumPropertyI< TBoolean > | featurePollingEnable = new EnumPropertyI<TBoolean>() |
An enumerated integer property defining whether features defining a polling time shall be updated automatically or not. | |
readonly PropertyI | featurePollingInterval_ms = new PropertyI() |
An integer property defining the polling interval in ms the driver waits for each iteration before running through update loop again. | |
readonly PropertyIBoolean | genDCParserEnable = new PropertyIBoolean() |
An enumerated integer property which can be used to enable/disable automatic GenICam™ GenDC Container parsing. | |
readonly PropertyI | imageProcessingMaximumThreadCount = new PropertyI() |
An integer property influencing the number of parallel threads used by the internal image processing pipeline. | |
readonly EnumPropertyI< TImageProcessingMode > | imageProcessingMode = new EnumPropertyI<TImageProcessingMode>() |
An enumerated integer property influencing the behaviour of the internal image processing pipeline. | |
readonly EnumPropertyI< TImageProcessingOptimization > | imageProcessingOptimization = new EnumPropertyI<TImageProcessingOptimization>() |
An enumerated integer property influencing the behaviour of the internal image processing algorithms. | |
readonly PropertyI | methodPollingInterval_ms = new PropertyI() |
An integer property defining the polling interval in ms the driver waits during each iteration before checking a methods execution state again. | |
readonly PropertyI | methodPollingMaxRetryCount = new PropertyI() |
An integer property defining the polling interval in ms the driver waits during each iteration before checking a methods execution state again. | |
readonly PropertyI | requestCount = new PropertyI() |
An integer property defining the number of requests allocated by the driver. | |
Properties | |
IEnumerable< Component > | componentEnumerable [get] |
Returns an enumerator that iterates through the collection. | |
IEnumerable< ComponentList > | componentListEnumerable [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. | |
A class for accessing general settings that control the overall behaviour of a device driver.
|
inline |
Constructs a new mv.impact.acquire.SystemSettings object.
[in] | device | A pointer to a mv.impact.acquire.Device object obtained from a mv.impact.acquire.DeviceManager object. |
|
inlineinherited |
Returns an enumerator of a certain type that iterates through the collection.
This interface will allow to e.g. write code like this:
See the framework's documentation about the System.Collections.IEnumerable interface for more information.
|
inlineinherited |
Returns an enumerator that iterates through the collection.
See the framework's documentation about the System.Collections.IEnumerable interface for more information.
|
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.
An integer property defining the maximum time in ms the driver waits for new requests being queued until streaming by the device will automatically be stopped.
This property defines the maximum time in milliseconds the driver waits for new mv.impact.acquire.Request objects being queued by calling mv.impact.acquire.FunctionInterface.imageRequestSingle once the driver will automatically send an acquisition stop command to a streaming device (such as a GigE Vision device) when the driver's request queue has run empty (thus the driver has no more buffers to capture data into).
This property will only be taken into account when mv.impact.acquire.Device.acquisitionStartStopBehaviour has been set to mv.impact.acquire.TAcquisitionStartStopBehaviour.assbDefault.
readonly EnumPropertyI<TAcquisitionMode> acquisitionMode = new EnumPropertyI<TAcquisitionMode>() |
An enumerated integer property defining the acquisition mode of the device.
Valid values for this property are defined by the enumeration mv.impact.acquire.TAcquisitionMode.
readonly EnumPropertyI<TBoolean> featurePollingEnable = new EnumPropertyI<TBoolean>() |
An enumerated integer property defining whether features defining a polling time shall be updated automatically or not.
Valid values for this property are defined by the enumeration mv.impact.acquire.TBoolean.
An integer property defining the polling interval in ms the driver waits for each iteration before running through update loop again.
Some features define a so called polling
time
. This is a recommendation by the device/driver stating that this property might change it's value without user interaction act a certain rate (e.g. the device temperature could be one example for a feature with such a behaviour). When mv.impact.acquire.SystemSettings.featurePollingEnable is set to mv.impact.acquire.TBoolean.bTrue a thread will check every featurePollingInterval_ms
if features need to be updated. This will only cause communication with a device for each feature who's polling time has elapsed.
readonly PropertyIBoolean genDCParserEnable = new PropertyIBoolean() |
An enumerated integer property which can be used to enable/disable automatic GenICam™ GenDC Container parsing.
When working with a GenICam™ compliant device, that transmits data using the GenDC format this property can be used to switch on/off the automatic parsing of the received containers. The default value of this property will be mv.impact.acquire.TBoolean.bTrue, so a GenDC container will be parsed upon reception and will be reported as the individual components like described here Multi-Part Format. This results in slightly more CPU time being consumed which sometimes might not be desirable since the GenDC Containers shall be processed later by another entity of the application or shall just be written to some storage location for off-line processing at a later moment in time. When this property is set to mv.impact.acquire.TBoolean.bFalse the data buffer will reported as a raw GenDC Container. mv.impact.acquire.Request.payloadType will return mv.impact.acquire.TPayloadType.ptGenDC then and mv.impact.acquire.Request.imagePixelFormat will be mv.impact.acquire.TImageBufferPixelFormat.ibpfRaw then. mv.impact.acquire.Request.imageData and mv.impact.acquire.Request.imageSize however can directly be fed into any GenDC capable algorithm.
Valid values for this property are defined by the enumeration mv.impact.acquire.TBoolean.
An integer property influencing the number of parallel threads used by the internal image processing pipeline.
This property can be used to control the size of the internal thread pool used for image processing tasks. Using a value higher than the number of physical CPU cores usually has a negative impact on the performance. Use with care!
readonly EnumPropertyI<TImageProcessingMode> imageProcessingMode = new EnumPropertyI<TImageProcessingMode>() |
An enumerated integer property influencing the behaviour of the internal image processing pipeline.
Valid values for this property are defined by the enumeration mv.impact.acquire.TImageProcessingMode.
readonly EnumPropertyI<TImageProcessingOptimization> imageProcessingOptimization = new EnumPropertyI<TImageProcessingOptimization>() |
An enumerated integer property influencing the behaviour of the internal image processing algorithms.
Valid values for this property are defined by the enumeration mv.impact.acquire.TImageProcessingOptimization.
An integer property defining the polling interval in ms the driver waits during each iteration before checking a methods execution state again.
When working with a GenICam compliant device, GenICam method objects need to be checked for their completion status every now and then. This parameter defines how often this shall be done.
An integer property defining the polling interval in ms the driver waits during each iteration before checking a methods execution state again.
When working with a GenICam compliant device, GenICam method objects need to be checked for their completion status every now and then. This parameter defines how often this shall be done at all. A method is checked for completion methodPollingMaxRetryCount
* methodPollingInterval_ms
at max. Until then either the device starts to inform the driver that it needs more time OR the execution of the method has completed successfully or an error will be generated.
An integer property defining the number of requests allocated by the driver.
Each request object can be used to capture data into. Multiple requests can be processed by a device driver as background tasks.
Setting this property to a value at least allowing a driver to capture data for up to 500ms without user interaction (thus 0.5 times the expected frame rate) is highly recommended. Increasing this value will NOT introduce additional latency to your application. The only drawback will be additional RAM consumption by the driver but applications that do not need to copy the request buffers can even benefit from that as the overall memory fragmentation is likely to get less than. Values smaller than 3 most likely result in undesired behaviour and should be avoided unless absolutely needed.
There are not too many reasons to modify the default request count suggested by the device driver. Good reasons include:
|
getinherited |
Returns an enumerator that iterates through the collection.
This interface will allow to e.g. write code like this:
See the framework's documentation about the System.Collections.IEnumerable interface for more information.
|
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:
See the framework's documentation about the System.Collections.IEnumerable interface for more information.
|
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.