#include <interface.h>
Public Member Functions | |
void | close () |
std::shared_ptr< Device > | getDevice (const char *devid) |
std::vector< std::shared_ptr < Device > > | getDevices () |
std::string | getDisplayName () const |
void * | getHandle () const |
const std::string & | getID () const |
std::shared_ptr < GenApi::CNodeMapRef > | getNodeMap () |
std::shared_ptr< System > | getParent () const |
std::string | getTLType () const |
Interface (const std::shared_ptr< System > &parent, const std::shared_ptr< const GenTLWrapper > &gentl, const char *id) | |
void | open () |
~Interface () | |
Private Member Functions | |
Interface (class Interface &) | |
Interface & | operator= (const Interface &) |
Private Attributes | |
std::shared_ptr< CPort > | cport |
std::vector< std::weak_ptr < Device > > | dlist |
std::shared_ptr< const GenTLWrapper > | gentl |
std::string | id |
void * | ifh |
int | n_open |
std::shared_ptr < GenApi::CNodeMapRef > | nodemap |
std::shared_ptr< System > | parent |
The interface class encapsulates a Genicam interface.
NOTE: A GenTLException is thrown in case of a severe error.
Definition at line 52 of file interface.h.
rcg::Interface::Interface | ( | const std::shared_ptr< System > & | parent, |
const std::shared_ptr< const GenTLWrapper > & | gentl, | ||
const char * | id | ||
) |
Constructs an interface class. Interfaces must only be created by the system class.
Definition at line 48 of file interface.cc.
Definition at line 59 of file interface.cc.
rcg::Interface::Interface | ( | class Interface & | ) | [private] |
void rcg::Interface::close | ( | ) |
Closes the interface. Each call of open() must be followed by a call to close() at some point in time.
Definition at line 98 of file interface.cc.
std::shared_ptr< Device > rcg::Interface::getDevice | ( | const char * | devid | ) |
Returns a device with the given device id.
NOTE: open() must be called before calling this method.
Definition at line 204 of file interface.cc.
std::vector< std::shared_ptr< Device > > rcg::Interface::getDevices | ( | ) |
Returns the currently available devices on this interface.
NOTE: open() must be called before calling this method.
Definition at line 135 of file interface.cc.
std::string rcg::Interface::getDisplayName | ( | ) | const |
Returns the display name of the interface.
NOTE: At least the parent object must have been opened before calling this method.
Definition at line 272 of file interface.cc.
void * rcg::Interface::getHandle | ( | ) | const |
const std::string & rcg::Interface::getID | ( | ) | const |
std::shared_ptr< GenApi::CNodeMapRef > rcg::Interface::getNodeMap | ( | ) |
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.
Definition at line 282 of file interface.cc.
std::shared_ptr< System > rcg::Interface::getParent | ( | ) | const |
Returns the pointer to the parent system object.
Definition at line 68 of file interface.cc.
std::string rcg::Interface::getTLType | ( | ) | const |
Returns the transport layer type of the interface.
NOTE: At least the parent object must have been opened before calling this method.
Definition at line 277 of file interface.cc.
void rcg::Interface::open | ( | ) |
Opens the interface 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 78 of file interface.cc.
std::shared_ptr<CPort> rcg::Interface::cport [private] |
Definition at line 169 of file interface.h.
std::vector<std::weak_ptr<Device> > rcg::Interface::dlist [private] |
Definition at line 172 of file interface.h.
std::shared_ptr<const GenTLWrapper> rcg::Interface::gentl [private] |
Definition at line 163 of file interface.h.
std::string rcg::Interface::id [private] |
Definition at line 164 of file interface.h.
void* rcg::Interface::ifh [private] |
Definition at line 167 of file interface.h.
int rcg::Interface::n_open [private] |
Definition at line 166 of file interface.h.
std::shared_ptr<GenApi::CNodeMapRef> rcg::Interface::nodemap [private] |
Definition at line 170 of file interface.h.
std::shared_ptr<System> rcg::Interface::parent [private] |
Definition at line 162 of file interface.h.