Public Types | Public Member Functions | Private Member Functions | Private Attributes
rcg::Device Class Reference

#include <device.h>

List of all members.

Public Types

enum  ACCESS { READONLY, CONTROL, EXCLUSIVE }

Public Member Functions

void close ()
 Device (const std::shared_ptr< Interface > &parent, const std::shared_ptr< const GenTLWrapper > &gentl, const char *id)
std::string getAccessStatus () const
std::string getDisplayName () const
void * getHandle () const
const std::string & getID () const
std::string getModel () const
std::shared_ptr
< GenApi::CNodeMapRef
getNodeMap ()
std::shared_ptr< InterfacegetParent () const
std::shared_ptr
< GenApi::CNodeMapRef
getRemoteNodeMap (const char *xml=0)
std::string getSerialNumber () const
std::vector< std::shared_ptr
< Stream > > 
getStreams ()
uint64_t getTimestampFrequency () const
std::string getTLType () const
std::string getUserDefinedName () const
std::string getVendor () const
std::string getVersion () const
void open (ACCESS access)
 ~Device ()

Private Member Functions

 Device (class Device &)
Deviceoperator= (const Device &)

Private Attributes

std::shared_ptr< CPortcport
void * dev
std::shared_ptr< const
GenTLWrapper
gentl
std::string id
int n_open
std::shared_ptr
< GenApi::CNodeMapRef
nodemap
std::shared_ptr< Interfaceparent
std::shared_ptr
< GenApi::CNodeMapRef
rnodemap
void * rp
std::shared_ptr< CPortrport
std::vector< std::weak_ptr
< Stream > > 
slist

Detailed Description

The device class encapsulates a Genicam device.

NOTE: A GenTLException is thrown in case of a severe error.

Definition at line 52 of file device.h.


Member Enumeration Documentation

Enumerator:
READONLY 
CONTROL 
EXCLUSIVE 

Definition at line 56 of file device.h.


Constructor & Destructor Documentation

rcg::Device::Device ( const std::shared_ptr< Interface > &  parent,
const std::shared_ptr< const GenTLWrapper > &  gentl,
const char *  id 
)

Constructs a device class. Devices must only be created by the interface class.

Definition at line 48 of file device.cc.

Definition at line 60 of file device.cc.

rcg::Device::Device ( class Device ) [private]

Member Function Documentation

Closes the device. Each call of open() must be followed by a call to close() at some point in time.

Definition at line 119 of file device.cc.

std::string rcg::Device::getAccessStatus ( ) const

Returns the access status of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
Access status.

Definition at line 279 of file device.cc.

std::string rcg::Device::getDisplayName ( ) const

Returns the display name of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
Display name.

Definition at line 274 of file device.cc.

void * rcg::Device::getHandle ( ) const

Get internal interace handle.

Returns:
Internal handle.

Definition at line 397 of file device.cc.

const std::string & rcg::Device::getID ( ) const

Get the internal ID of this device.

Returns:
ID.

Definition at line 80 of file device.cc.

std::string rcg::Device::getModel ( ) const

Returns the model of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
Model.

Definition at line 264 of file device.cc.

Returns the node map of this object.

NOTE: open() must be called before calling this method. The returned pointer remains valid until close() of this object is called.

Returns:
Node map of this object.

Definition at line 372 of file device.cc.

std::shared_ptr< Interface > rcg::Device::getParent ( ) const

Returns the pointer to the parent interface object.

Returns:
Pointer to parent interface object.

Definition at line 75 of file device.cc.

std::shared_ptr< GenApi::CNodeMapRef > rcg::Device::getRemoteNodeMap ( const char *  xml = 0)

Returns the node map of the remote device.

NOTE: open() must be called before calling this method. The returned pointer remains valid until close() of this object is called.

Parameters:
xmlPath and name for storing the received XML file or 0 if xml file should not be stored.
Returns:
Node map of this object.

Definition at line 383 of file device.cc.

std::string rcg::Device::getSerialNumber ( ) const

Returns the serial number of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
Serial number.

Definition at line 343 of file device.cc.

std::vector< std::shared_ptr< Stream > > rcg::Device::getStreams ( )

Returns the currently available streams of this device.

NOTE: open() must be called before calling this method.

Returns:
List of streams.

Definition at line 160 of file device.cc.

Returns the timestamp frequency of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
Tick-frequency of the time stamp clock.

Definition at line 353 of file device.cc.

std::string rcg::Device::getTLType ( ) const

Returns the transport layer type of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
Transport layer type.

Definition at line 269 of file device.cc.

std::string rcg::Device::getUserDefinedName ( ) const

Returns the user defined name of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
User defined name.

Definition at line 338 of file device.cc.

std::string rcg::Device::getVendor ( ) const

Returns the vendor of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
Vendor.

Definition at line 259 of file device.cc.

std::string rcg::Device::getVersion ( ) const

Returns the version of the device.

NOTE: At least the parent object must have been opened before calling this method.

Returns:
Version.

Definition at line 348 of file device.cc.

void rcg::Device::open ( ACCESS  access)

Opens the device for working with it. The interface may be opened multiple times. However, for each open(), the close() method must be called as well.

Definition at line 85 of file device.cc.

Device& rcg::Device::operator= ( const Device ) [private]

Member Data Documentation

std::shared_ptr<CPort> rcg::Device::cport [private]

Definition at line 252 of file device.h.

void* rcg::Device::dev [private]

Definition at line 249 of file device.h.

std::shared_ptr<const GenTLWrapper> rcg::Device::gentl [private]

Definition at line 245 of file device.h.

std::string rcg::Device::id [private]

Definition at line 246 of file device.h.

int rcg::Device::n_open [private]

Definition at line 248 of file device.h.

std::shared_ptr<GenApi::CNodeMapRef> rcg::Device::nodemap [private]

Definition at line 253 of file device.h.

std::shared_ptr<Interface> rcg::Device::parent [private]

Definition at line 244 of file device.h.

std::shared_ptr<GenApi::CNodeMapRef> rcg::Device::rnodemap [private]

Definition at line 253 of file device.h.

void* rcg::Device::rp [private]

Definition at line 250 of file device.h.

std::shared_ptr<CPort> rcg::Device::rport [private]

Definition at line 252 of file device.h.

std::vector<std::weak_ptr<Stream> > rcg::Device::slist [private]

Definition at line 255 of file device.h.


The documentation for this class was generated from the following files:


rc_visard_driver
Author(s): Heiko Hirschmueller , Christian Emmerich , Felix Ruess
autogenerated on Thu Jun 6 2019 20:43:12