36 #ifndef RC_GENICAM_API_INTERFACE 37 #define RC_GENICAM_API_INTERFACE 54 class Interface :
public std::enable_shared_from_this<Interface>
64 const std::shared_ptr<const GenTLWrapper> &
gentl,
const char *
id);
73 std::shared_ptr<System>
getParent()
const;
81 const std::string &
getID()
const;
106 std::vector<std::shared_ptr<Device> >
getDevices();
116 std::shared_ptr<Device>
getDevice(
const char *devid);
149 std::shared_ptr<GenApi::CNodeMapRef>
getNodeMap();
165 std::shared_ptr<const GenTLWrapper>
gentl;
176 std::vector<std::weak_ptr<Device> >
dlist;
std::vector< std::weak_ptr< Device > > dlist
std::string getDisplayName()
Returns the display name of the interface.
std::vector< std::shared_ptr< Device > > getDevices()
Returns the currently available devices on this interface.
std::shared_ptr< CPort > cport
const std::string & getID() const
Get the internal ID of this interface.
void * getHandle() const
Get internal interace handle.
Interface(const std::shared_ptr< System > &parent, const std::shared_ptr< const GenTLWrapper > &gentl, const char *id)
Constructs an interface class.
std::string getTLType()
Returns the transport layer type of the interface.
std::shared_ptr< GenApi::CNodeMapRef > getNodeMap()
Returns the node map of this object.
Interface & operator=(const Interface &)
std::shared_ptr< System > parent
std::shared_ptr< Device > getDevice(const char *devid)
Returns a device with the given device id.
void close()
Closes the interface.
std::shared_ptr< GenApi::CNodeMapRef > nodemap
void open()
Opens the interface for working with it.
std::shared_ptr< const GenTLWrapper > gentl
std::shared_ptr< System > getParent() const
Returns the pointer to the parent system object.
The interface class encapsulates a Genicam interface.