Impact Acquire SDK .NET
|
Grants access to devices that can be operated by this software interface. More...
Static Public Member Functions | |
static Device | getDevice (int index) |
Returns a pointer to a mv.impact.acquire.Device object. | |
static Device | getDeviceByFamily (String family) |
Tries to locate a device via the family name. | |
static Device | getDeviceByFamily (String family, int devNr) |
Tries to locate a device via the family name. | |
static Device | getDeviceByFamily (String family, int devNr, char wildcard) |
Tries to locate a device via the family name. | |
static Device | getDeviceByProduct (String product) |
Tries to locate a device via the product name. | |
static Device | getDeviceByProduct (String product, int devNr) |
Tries to locate a device via the product name. | |
static Device | getDeviceByProduct (String product, int devNr, char wildcard) |
Tries to locate a device via the product name. | |
static Device | getDeviceByProductAndID (String product) |
Tries to locate a device via the product name and the device ID. | |
static Device | getDeviceByProductAndID (String product, int devID) |
Tries to locate a device via the product name and the device ID. | |
static Device | getDeviceByProductAndID (String product, int devID, char wildcard) |
Tries to locate a device via the product name and the device ID. | |
static Device | getDeviceByProductAndID (String product, String devID) |
Tries to locate a device via the product name and the device ID. | |
static Device | getDeviceByProductAndID (String product, String devID, char wildcard) |
Tries to locate a device via the product name and the device ID. | |
static Device | getDeviceBySerial (String serial) |
Tries to locate a device via the serial number. | |
static Device | getDeviceBySerial (String serial, int devNr) |
Tries to locate a device via the serial number. | |
static Device | getDeviceBySerial (String serial, int devNr, char wildcard) |
Tries to locate a device via the serial number. | |
static String | getVersionAsString (TLibraryQuery libraryQuery) |
Returns a string containing the version number of the specified library. | |
static void | updateDeviceList () |
Updates the internal device list. | |
Properties | |
static uint | changedCount [get] |
Returns the current changed counter for the device list. | |
static int | deviceCount [get] |
Returns the number of devices currently present in the system. | |
static ReadOnlyCollection< Device > | deviceList [get] |
Returns a list of all devices currently detected by the device manager. | |
static ComponentList | internalHandle [get] |
Returns the internal handle to the device manager. | |
static bool | isDotNETBitmapSupportAvailable [get] |
Grants access to devices that can be operated by this software interface.
This class will grant access to any device installed on/in the current system. Whenever somewhere in the code a mv.impact.acquire.DeviceManager instance is created it can be used to access any device currently supported and available.
This is the only class which is allowed to create instances of the class mv.impact.acquire.Device, which are needed to access a certain device.
If a device is installed in the system but an appropriate driver has not been installed, this class will NOT list these devices.
As a result of this every program written by the use of this interface will create an instance of mv.impact.acquire.DeviceManager before performing any other operations which uses objects or functions from this interface.
During the construction of a mv.impact.acquire.DeviceManager object the system will be scanned for supported devices and once the instance has been created the object will provide an up to date list of devices whenever the user asks for it. Some devices when plugged into the system after the device manager has been created might require an explicit update of the device list. This can be triggered by an application by calling mv.impact.acquire.DeviceManager.updateDeviceList().
This class also provides various functions to find a particular device in the system. Devices can e.g. be found by family or by serial number.
EXAMPLE CODE:
Returns a pointer to a mv.impact.acquire.Device object.
Returns a pointer to a mv.impact.acquire.Device object specifying the device found at the given index in the device managers internal list.
[in] | index | The index of the device to be returned. |
Tries to locate a device via the family name.
This function tries to find a device by its family (or parts of this family name). The user can specify only parts of the family name and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find the device that matches these parameters in its current list. The family is the most general method of searching for a device apart from 'any device'. E.g. for a device the family name might be 'SampleDevice'
Examples
[in] | family | The full family name of the requested device or known parts of it and wildcard characters. |
Tries to locate a device via the family name.
This function tries to find a device by its family (or parts of this family name). The user can specify only parts of the family name and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find the device that matches these parameters in its current list. The family is the most general method of searching for a device apart from 'any device'. E.g. for a device the family name might be 'SampleDevice'
Examples
[in] | family | The full family name of the requested device or known parts of it and wildcard characters. |
[in] | devNr | The number of the device to return (if there is more than one candidate). |
Tries to locate a device via the family name.
This function tries to find a device by its family (or parts of this family name). The user can specify only parts of the family name and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find the device that matches these parameters in its current list. The family is the most general method of searching for a device apart from 'any device'. E.g. for a device the family name might be 'SampleDevice'
Examples
[in] | family | The full family name of the requested device or known parts of it and wildcard characters. |
[in] | devNr | The number of the device to return (if there is more than one candidate). |
[in] | wildcard | The character to ignore in family. |
Tries to locate a device via the product name.
This function tries to find a device by its product name (or parts of it). The user can specify only parts of the name and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find the device that matches these parameters in its current list. The product name is a bit more specific than the family name, but less specific than the serial. For the 'SampleDevice' for example there might be different product names for different device types. This might e.g. be 'SampleDevice-G' for a grey version of the sample device and 'SampleDevice-C' for the color version of the sample device.
Examples
[in] | product | The full product name of the requested device or known parts of it and wildcard characters. |
Tries to locate a device via the product name.
This function tries to find a device by its product name (or parts of it). The user can specify only parts of the name and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find the device that matches these parameters in its current list. The product name is a bit more specific than the family name, but less specific than the serial. For the 'SampleDevice' for example there might be different product names for different device types. This might e.g. be 'SampleDevice-G' for a grey version of the sample device and 'SampleDevice-C' for the color version of the sample device.
Examples
[in] | product | The full product name of the requested device or known parts of it and wildcard characters. |
[in] | devNr | The number of the device to return (if there is more than one candidate). |
Tries to locate a device via the product name.
This function tries to find a device by its product name (or parts of it). The user can specify only parts of the name and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find the device that matches these parameters in its current list. The product name is a bit more specific than the family name, but less specific than the serial. For the 'SampleDevice' for example there might be different product names for different device types. This might e.g. be 'SampleDevice-G' for a grey version of the sample device and 'SampleDevice-C' for the color version of the sample device.
Examples
[in] | product | The full product name of the requested device or known parts of it and wildcard characters. |
[in] | devNr | The number of the device to return (if there is more than one candidate). |
[in] | wildcard | The character to ignore in product. |
Tries to locate a device via the product name and the device ID.
This function behaves like mv.impact.acquire.DeviceManager.getDeviceByProduct except that the second parameter now is interpreted as the device ID.
Examples
[in] | product | The full product name of the requested device or known parts of it and wildcard characters. |
Tries to locate a device via the product name and the device ID.
This function behaves like mv.impact.acquire.DeviceManager.getDeviceByProduct except that the second parameter now is interpreted as the device ID.
Examples
[in] | product | The full product name of the requested device or known parts of it and wildcard characters. |
[in] | devID | The ID associated with this device. |
Tries to locate a device via the product name and the device ID.
This function behaves like mv.impact.acquire.DeviceManager.getDeviceByProduct except that the second parameter now is interpreted as the device ID.
Examples
[in] | product | The full product name of the requested device or known parts of it and wildcard characters. |
[in] | devID | The ID associated with this device. |
[in] | wildcard | The character to ignore in product. |
Tries to locate a device via the product name and the device ID.
This function can be used to locate devices with a certain string identifier that has previously been written into a devices non-volatile memory. E.g. GenICam devices may support the DeviceUserID
feature to assign a certain user defined name. A user defined name might be useful e.g. to access a device with a certain function without the need to worry about which device is it. You could e.g. have a barcodeReadingDevice
and a monitorCamera
. This function behaves like mv.impact.acquire.DeviceManager.getDeviceByProduct except that the second parameter now is interpreted as the device ID.
Examples
[in] | product | The full product name of the requested device or known parts of it and wildcard characters. |
[in] | devID | The device ID associated with this device. |
Tries to locate a device via the product name and the device ID.
This function behaves like mv.impact.acquire.DeviceManager.getDeviceByProduct except that the second parameter now is interpreted as the device ID.
Examples
[in] | product | The full product name of the requested device or known parts of it and wildcard characters. |
[in] | devID | The device ID associated with this device. |
[in] | wildcard | The character to ignore in product. |
Tries to locate a device via the serial number.
This function tries to find a device by its serial number (or parts of this number). The user can specify only parts of the serial number and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find that matches these parameters in its current list.
Examples
[in] | serial | The full serial number or the known parts of the serial number and wildcard characters. |
Tries to locate a device via the serial number.
This function tries to find a device by its serial number (or parts of this number). The user can specify only parts of the serial number and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find that matches these parameters in its current list.
Examples
[in] | serial | The full serial number or the known parts of the serial number and wildcard characters. |
[in] | devNr | The number of the device to return (if there is more than one candidate). |
Tries to locate a device via the serial number.
This function tries to find a device by its serial number (or parts of this number). The user can specify only parts of the serial number and a wildcard. The mv.impact.acquire.DeviceManager object will then try to find that matches these parameters in its current list.
Examples
[in] | serial | The full serial number or the known parts of the serial number and wildcard characters. |
[in] | devNr | The number of the device to return (if there is more than one candidate). |
[in] | wildcard | The character to ignore in serial. |
|
inlinestatic |
Returns a string containing the version number of the specified library.
This function returns a string containing the version number of the specified library.
The format of the string will be MAJOR.MINOR.RELEASE.BUILD.
[in] | libraryQuery | Specifies the library to query information from. |
Updates the internal device list.
Most devices can't appear out of nowhere. For example a PCI device is either connected to the current system when the device manager is initialised or not but it will never appear at runtime after this instance of mv.impact.acquire.DeviceManager has been created.
However certain device classes (e.g. network devices) might be connected to the system AFTER the device manager has been initialised. Some will announce themselves like e.g. USB devices, which will send a message to every application interested while others like e.g. network devices wont. In order not to pollute the network or bus with constant rescan messages no polling is done inside the driver. the user should call this function instead when looking for new devices. This can either be done in reasonable intervals or after it is known that a new device has been connected to the system.
If new devices have been detected a subsequent call to mv.impact.acquire.DeviceManager.deviceCount will result in a higher value when compared to a previous call and mv.impact.acquire.DeviceManager.changedCount will contain a different value as well then (however this could also happen because a certain device related property did change its state).
|
staticget |
Returns the current changed counter for the device list.
This is a useful function to find out if the device list has been changed in any way. Such a change might be the appearance of a new USB device or a state change of any other device (e.g. when a USB device has been unplugged). Thus this function can be called periodically in order to maintain lists in GUI application for example. To find out the actual number of devices call mv.impact.acquire.DeviceManager.deviceCount.
|
staticget |
Returns the number of devices currently present in the system.
This function returns the number of devices currently detected in the system. A device once connected to the system while the device manager was running will remain in its list even if it's unplugged (then only its state will change). To detect changes in the mv.impact.acquire.DeviceManager objects list call the function mv.impact.acquire.DeviceManager.changedCount.
|
staticget |
Returns a list of all devices currently detected by the device manager.
To detect some devices(non P'n'P hardware) at runtime that have been connected to the system AFTER the device manager has been created the function mv.impact.acquire.DeviceManager.updateDeviceList() must be called.
|
staticget |
Returns the internal handle to the device manager.
|
staticgetpackage |