![]() |
Programmer's Guide Baumer GAPI SDK Reference v2.10.0
|
The class Device is used to retrieve information (e.g. model, manufacturer, access modes) of the device (camera) and also to control the device. This class belongs to the BGAPI2 main classes. More...
#include <bgapi2_genicam.hpp>
Public Member Functions | |
void | Open () |
This function opens the device object and makes their functions available. Exceptions are the info-functions, which are already available before opening the device. More... | |
void | OpenExclusive () |
This function opens the device object exclusive and makes their functions available. Exceptions are the info-functions, which are already available before opening the device. More... | |
void | OpenReadOnly () |
This function opens the device object only for reading and make their functions available. Exceptions are the info-functions, which are already available before opening the device. More... | |
void | Close () |
This function closes the device object and releases the used resources. More... | |
bo_bool | IsOpen () |
This function delivers true, if the device is opened. More... | |
void | StartStacking (bo_bool bReplaceMode) |
This function starts the stacked mode for write commands (control commands). See remarks. More... | |
void | WriteStack () |
This function writes the collected values to the device and stops the stacked mode. More... | |
void | CancelStack () |
This function drops the collected values and stops the stacked mode. More... | |
DataStreamList * | GetDataStreams () |
This function delivers the data stream list of the device. More... | |
String | GetID () |
This function delivers the unique string identifier of the Device, which is used in the DeviceList. More... | |
String | GetVendor () |
This function delivers the name of the device vendor. More... | |
String | GetModel () |
This function delivers the name of the device. More... | |
String | GetSerialNumber () |
This function delivers the serial number of the device. More... | |
String | GetTLType () |
This function delivers the transport layer type of the Device. More... | |
String | GetDisplayName () |
This function delivers a meaningful name of the Device for display only. More... | |
String | GetAccessStatus () |
This function delivers the access mode to the device. If this function is used before opening the device, it provides the possible access mode. The following possibilities can occur before opening the device. More... | |
bo_uint64 | GetPayloadSize () |
If the device supports a streaming channel for data transfer, this function delivers the size of the expecting data block in bytes based on the current device settings and including all control data (e.g. chunk header). More... | |
Node * | GetRemoteNode (String name) |
The remote functions of the Device class are used to get access to the features of the physical (remote) device. More... | |
NodeMap * | GetRemoteNodeTree () |
The remote functions of the Device class are used to get access to the features of the physical (remote) device. More... | |
NodeMap * | GetRemoteNodeList () |
The remote functions of the Device class are used to get access to the features of the physical (remote) device. More... | |
String | GetRemoteConfigurationFile () |
The remote functions of the Device class are used to get access to the features of the physical (remote) device. More... | |
void | SetRemoteConfigurationFile (String sConfigFile) |
The remote functions of the Device class are used to get access to the features of the physical (remote) device. More... | |
bo_bool | IsUpdateModeAvailable () |
The update functions of the Device class are used to get access to firmware of the physical (remote) device. More... | |
bo_bool | IsUpdateModeActive () |
The update functions of the Device class are used to get access to firmware of the physical (remote) device. More... | |
void | SetUpdateMode (bool bActive, String pcCustomKey) |
The update functions of the Device class are used to get access to firmware of the physical (remote) device. More... | |
Node * | GetUpdateNode (String name) |
The update functions of the Device class are used to get access to the update features of the physical (remote) device. More... | |
NodeMap * | GetUpdateNodeTree () |
The update functions of the Device class are used to get access to the update features of the physical (remote) device. More... | |
NodeMap * | GetUpdateNodeList () |
The update functions of the Device class are used to get access to the update features of the physical (remote) device. More... | |
String | GetUpdateConfigurationFile () |
The update functions of the Device class are used to get access to the update features of the physical (remote) device. More... | |
Interface * | GetParent () |
This function delivers the superordinate Interface object. More... | |
void * | GetReserved () |
Undocumented function. | |
![]() | |
Node * | GetNode (String name) |
This function delivers a certain object of the Node list and provides the access to a node objcet without the detour across a NodeMap object. This function is functional identical to NodeMap::GetNode. More... | |
NodeMap * | GetNodeTree () |
This function provides the features of a object derived from INode interface as tree structure in form of a NodeMap pointer. For a detailed description of the tree structure representation refer to the class description of NodeMap. More... | |
NodeMap * | GetNodeList () |
This function provides the features of a object derived from INode interface as unstructured list in form of a NodeMap pointer. For a detailed description of the unstructured list representation refer to the class description of NodeMap. More... | |
![]() | |
void | RegisterDeviceEvent (EventMode eventMode) |
This function registers a DeviceEvent at an Device object to detect asynchronous events from the physical connected device. More... | |
void | UnregisterDeviceEvent () |
This function unregisters a DeviceEvent at an Device object. More... | |
bo_bool | GetDeviceEvent (DeviceEvent *pDeviceEvent, bo_uint64 iTimeout) |
This function fetches a DeviceEvent from the Device object. More... | |
void | CancelGetDeviceEvent () |
This function cancels the current waiting operation on the GetDeviceEvent function. More... | |
void | RegisterDeviceEventHandler (void *callBackOwner, DeviceEventHandler pFunc) |
Register a callback function which is called any time a new device event was received. More... | |
![]() | |
EventMode | GetEventMode () |
This function delivers the current event mode setting. The event mode is controlled by the event register functions. See also enumeration Events::EventMode. More... | |
void * | GetBase () |
Undocumented function. More... | |
Friends | |
class | DeviceList |
class | DataStreamList |
class | DataStream |
The class Device is used to retrieve information (e.g. model, manufacturer, access modes) of the device (camera) and also to control the device. This class belongs to the BGAPI2 main classes.
Definition at line 2678 of file bgapi2_genicam.hpp.
BGAPI2::Device::CancelStack | ( | ) |
This function drops the collected values and stops the stacked mode.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NoDataException | The stacked mode is not started or no control commands were written after calling the function Device::StartStacking. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::Close | ( | ) |
This function closes the device object and releases the used resources.
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::GetAccessStatus | ( | ) |
This function delivers the access mode to the device. If this function is used before opening the device, it provides the possible access mode. The following possibilities can occur before opening the device.
If the function delivers with "RW" before opening, the device can be opened with one of the functions Device::Open or Device::OpenExclusive. If the function delivers with "RO" before opening, the device can be opend only with function Device::OpenReadOnly. If the function delivers with "NA" before opening, the device can not be opened. If the function delivers with "Unknown" before opening, the access mode could not be determined. The call to an open function may throw an exception. Is the device already opened, this function delivers the current access mode. The following variants can occur after opening the device. If the device was opened with the function Device::Open or Device::OpenExclusive, the function delivers "RW". If the device was opened with the function Device::OpenReadOnly, the function delivers "RO".
Exceptions::NotAvailableException | The GenTL producer delivers an unexpected access mode. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::GetDataStreams | ( | ) |
This function delivers the data stream list of the device.
Exceptions::NotInitializedException | The interface object is not open. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::GetDisplayName | ( | ) |
This function delivers a meaningful name of the Device for display only.
For Baumer devices this function delivers the value of the feature 'DeviceUserID'. If this feature is not available or empty the model name of the device is delivered instead.
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::GetID | ( | ) |
This function delivers the unique string identifier of the Device, which is used in the DeviceList.
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::GetModel | ( | ) |
This function delivers the name of the device.
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::GetParent | ( | ) |
BGAPI2::Device::GetPayloadSize | ( | ) |
If the device supports a streaming channel for data transfer, this function delivers the size of the expecting data block in bytes based on the current device settings and including all control data (e.g. chunk header).
This function is mainly used to determine the size of image buffers to allocate. See also the functions DataStream::GetPayloadSize and DataStream::GetDefinesPayloadSize.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | This function is not supported. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::GetRemoteConfigurationFile | ( | ) |
The remote functions of the Device class are used to get access to the features of the physical (remote) device.
This function delivers the GenICam XML File of the remote device.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | The GenICam XML file of the remote device is not available. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::GetRemoteNode | ( | String | name | ) |
The remote functions of the Device class are used to get access to the features of the physical (remote) device.
This function allows the access to a requested feature of the remote device. If the requested feature is not available, an exception is thrown.
name | The requested feature of the remote device. For standardized features the predefined items in bgapi2_featurenames.h should be used. |
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | The GenICam XML file of the remote device is not available. |
Exceptions::InvalidParameterException | The requested feature is not available. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::GetRemoteNodeList | ( | ) |
The remote functions of the Device class are used to get access to the features of the physical (remote) device.
This function provides the features of the remote device as unstructured list in form of a NodeMap pointer. For a detailed description of the unstructured list representation refer to the class description of NodeMap.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | The GenICam XML file of the remote device is not available. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::GetRemoteNodeTree | ( | ) |
The remote functions of the Device class are used to get access to the features of the physical (remote) device.
This function provides the features of the remote device as tree structure in form of a NodeMap pointer. For a detailed description of the tree structure representation refer to the class description of NodeMap. The access to the features (elements) of the subordinated levels of hierarchy the functions Node::GetNodeTree and Node::GetNodeList should be used respectively.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | The GenICam XML file of the remote device is not available. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::GetSerialNumber | ( | ) |
This function delivers the serial number of the device.
Exceptions::NotImplementedException | This function is currently not implemented. |
BGAPI2::Device::GetTLType | ( | ) |
This function delivers the transport layer type of the Device.
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::GetUpdateConfigurationFile | ( | ) |
The update functions of the Device class are used to get access to the update features of the physical (remote) device.
This function delivers the GenICam XML File of the update features.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | The GenICam XML file of the remote device is not available. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::GetUpdateNode | ( | String | name | ) |
The update functions of the Device class are used to get access to the update features of the physical (remote) device.
This function allows the access to a requested update feature of the remote device. If the requested update feature is not available, an exception is thrown.
name | The requested update feature of the remote device. |
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | The GenICam XML file of the remote device is not available. |
Exceptions::InvalidParameterException | The requested feature is not available. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::GetUpdateNodeList | ( | ) |
The update functions of the Device class are used to get access to the update features of the physical (remote) device.
This function provides the update features of the remote device as unstructured list in form of a NodeMap pointer. For a detailed description of the unstructured list representation refer to the class description of NodeMap.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | The GenICam XML file of the remote device is not available. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::GetUpdateNodeTree | ( | ) |
The update functions of the Device class are used to get access to the update features of the physical (remote) device.
This function provides the update features of the remote device as tree structure in form of a NodeMap pointer. For a detailed description of the tree structure representation refer to the class description of NodeMap. The access to the update features (elements) of the subordinated levels of hierarchy the functions Node::GetNodeTree and Node::GetNodeList should be used respectively.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NotAvailableException | The GenICam XML file of the remote device is not available. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::GetVendor | ( | ) |
This function delivers the name of the device vendor.
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::IsOpen | ( | ) |
This function delivers true, if the device is opened.
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::IsUpdateModeActive | ( | ) |
The update functions of the Device class are used to get access to firmware of the physical (remote) device.
This function delivers true if the update mode is active.
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::IsUpdateModeAvailable | ( | ) |
The update functions of the Device class are used to get access to firmware of the physical (remote) device.
This function delivers true if the update mode is available.
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::Open | ( | ) |
This function opens the device object and makes their functions available. Exceptions are the info-functions, which are already available before opening the device.
Exceptions::ResourceInUseException | This exception will be thrown if the device object is already opened. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::OpenExclusive | ( | ) |
This function opens the device object exclusive and makes their functions available. Exceptions are the info-functions, which are already available before opening the device.
Exceptions::ResourceInUseException | This exception will be thrown if the device object is already opened. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::OpenReadOnly | ( | ) |
This function opens the device object only for reading and make their functions available. Exceptions are the info-functions, which are already available before opening the device.
Exceptions::ResourceInUseException | This exception will be thrown if the device object is already opened in exclusive mode. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
BGAPI2::Device::SetRemoteConfigurationFile | ( | String | sConfigFile | ) |
The remote functions of the Device class are used to get access to the features of the physical (remote) device.
This function sets a custom GenICam XML File of the remote device.
sConfigFile | is a coustom config file of the remote device. Set to "" to use the default file of the device. |
Exceptions::ResourceInUseException | The device object is open. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::SetUpdateMode | ( | bool | bActive, |
String | pcCustomKey | ||
) |
The update functions of the Device class are used to get access to firmware of the physical (remote) device.
This function enables or disables the update mode. See remarks.
bActive | Enable or disable the update mode. This mode will control whether the nodemap contains update or bgapi features. |
pcCustomKey | is reserved for future use and should be set to "". |
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::ResourceInUseException | This exception will be thrown if the update mode is already in the target state. |
BGAPI2::Device::StartStacking | ( | bo_bool | bReplaceMode | ) |
This function starts the stacked mode for write commands (control commands). See remarks.
bReplaceMode | Enable or disable the replace mode. This mode will control whether all accesses to a register will be transferred to the device or only the last one. |
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
BGAPI2::Device::WriteStack | ( | ) |
This function writes the collected values to the device and stops the stacked mode.
Exceptions::NotInitializedException | The device object is not open. |
Exceptions::NoDataException | The stacked mode is not started or no control commands were written after calling the function Device::StartStacking. |
Exceptions::ObjectInvalidException | The calling object is not valid. |
Exceptions::LowLevelException | GenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information. |
Jan, 14 2020
Baumer Optronic GmbH,
Badstrasse 30, 01454 D-Radeberg, Tel:+49-3528-4386-0, Fax:+49-3528-4386-86,
Email:support.cameras@baumer.com