Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
rcg::System Class Reference

The system class encapsulates a Genicam transport layer. More...

#include <system.h>

List of all members.

Public Member Functions

void close ()
 Closes the system.
std::string getDisplayName ()
 Returns the display name of the GenTL provider.
const std::string & getFilename () const
 Get file name from which this system was created.
void * getHandle () const
 Get internal handle of open transport layer.
std::string getID ()
 Returns the ID of the GenTL provider.
std::vector< std::shared_ptr
< Interface > > 
getInterfaces ()
 Returns the currently available interfaces.
int getMajorVersion ()
 Returns the major version number.
int getMinorVersion ()
 Returns the minor version number.
std::string getModel ()
 Returns the model of the GenTL provider.
std::string getName ()
 Returns the file name of the GenTL provider.
std::shared_ptr
< GenApi::CNodeMapRef
getNodeMap ()
 Returns the node map of this object.
std::string getPathname ()
 Returns the full path name of the GenTL provider.
std::string getTLType ()
 Returns the transport layer type of the GenTL provider.
std::string getVendor ()
 Returns the vendor name of the GenTL provider.
std::string getVersion ()
 Returns the version of the GenTL provider.
bool isCharEncodingASCII ()
 Returns the character encoding.
void open ()
 Opens the system for working with it.
 ~System ()

Static Public Member Functions

static void clearSystems ()
 Clears the internal list of systems.
static std::vector
< std::shared_ptr< System > > 
getSystems ()
 Returns a list of systems (i.e.

Private Member Functions

Systemoperator= (const System &)
 System (const std::string &_filename)
 System (class System &)

Private Attributes

std::shared_ptr< CPortcport
std::string filename
std::shared_ptr< const
GenTLWrapper
gentl
std::vector< std::weak_ptr
< Interface > > 
ilist
std::mutex mtx
int n_open
std::shared_ptr
< GenApi::CNodeMapRef
nodemap
void * tl

Detailed Description

The system class encapsulates a Genicam transport layer.

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

Definition at line 58 of file system.h.


Constructor & Destructor Documentation

Definition at line 55 of file system.cc.

rcg::System::System ( const std::string &  _filename) [private]

Definition at line 514 of file system.cc.

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

Member Function Documentation

void rcg::System::clearSystems ( ) [static]

Clears the internal list of systems.

This may be called before exit so that all resources are cleaned before leaving the main function.

Definition at line 213 of file system.cc.

Closes the system.

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

Definition at line 239 of file system.cc.

std::string rcg::System::getDisplayName ( )

Returns the display name of the GenTL provider.

Returns:
Display name.

Definition at line 423 of file system.cc.

const std::string & rcg::System::getFilename ( ) const

Get file name from which this system was created.

Returns:
File name.

Definition at line 219 of file system.cc.

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

Get internal handle of open transport layer.

Returns:
Internal handle.

Definition at line 509 of file system.cc.

std::string rcg::System::getID ( )

Returns the ID of the GenTL provider.

Returns:
ID.

Definition at line 381 of file system.cc.

std::vector< std::shared_ptr< Interface > > rcg::System::getInterfaces ( )

Returns the currently available interfaces.

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

Returns:
List of interfaces.

Definition at line 276 of file system.cc.

Returns the major version number.

Returns:
Major version number.

Definition at line 457 of file system.cc.

Returns the minor version number.

Returns:
Minor version number.

Definition at line 477 of file system.cc.

std::string rcg::System::getModel ( )

Returns the model of the GenTL provider.

Returns:
Model.

Definition at line 393 of file system.cc.

std::string rcg::System::getName ( )

Returns the file name of the GenTL provider.

Returns:
File name.

Definition at line 411 of file system.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 497 of file system.cc.

std::string rcg::System::getPathname ( )

Returns the full path name of the GenTL provider.

Returns:
Full path name.

Definition at line 417 of file system.cc.

std::vector< std::shared_ptr< System > > rcg::System::getSystems ( ) [static]

Returns a list of systems (i.e.

transport layers) that is currently available. For discovering available transport layers, the environment variable GENICAM_GENTL32_PATH or GENICAM_GENTL64_PATH (depending on the compilation with 32 or 64 bit) is used. In case the environment variable is not set or is empty, a default path is used, which points to the GenTL layer that is bundled with rc_genicam_api.

NOTE: This is the only method that can instantiate System objects.

Returns:
List of all available transport layers.

Definition at line 116 of file system.cc.

std::string rcg::System::getTLType ( )

Returns the transport layer type of the GenTL provider.

Returns:
Transport layer type.

Definition at line 405 of file system.cc.

std::string rcg::System::getVendor ( )

Returns the vendor name of the GenTL provider.

Returns:
Vendor name.

Definition at line 387 of file system.cc.

std::string rcg::System::getVersion ( )

Returns the version of the GenTL provider.

Returns:
Version.

Definition at line 399 of file system.cc.

Returns the character encoding.

Returns:
True for ASCII, false for UTF8.

Definition at line 429 of file system.cc.

Opens the system for working with it.

The system may be opened multiple times. However, for each open(), the close() method must be called as well.

Definition at line 224 of file system.cc.

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

Member Data Documentation

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

Definition at line 240 of file system.h.

std::string rcg::System::filename [private]

Definition at line 232 of file system.h.

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

Definition at line 233 of file system.h.

std::vector<std::weak_ptr<Interface> > rcg::System::ilist [private]

Definition at line 243 of file system.h.

std::mutex rcg::System::mtx [private]

Definition at line 235 of file system.h.

int rcg::System::n_open [private]

Definition at line 237 of file system.h.

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

Definition at line 241 of file system.h.

void* rcg::System::tl [private]

Definition at line 238 of file system.h.


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


rc_genicam_api
Author(s): Heiko Hirschmueller
autogenerated on Thu Jun 6 2019 18:42:49