IDS peak genericC++ v1.12.0
Loading...
Searching...
No Matches
peak::core::SystemDescriptor Class Reference

Encapsulates the GenTL functions associated with the GenTL System module's ID. More...

#include <peak/system/peak_system_descriptor.hpp>

Inheritance diagram for peak::core::SystemDescriptor:
peak::core::ModuleDescriptor

Public Member Functions

 SystemDescriptor ()=delete
 
 ~SystemDescriptor () override=default
 
 SystemDescriptor (const SystemDescriptor &other)=delete
 
SystemDescriptor & operator= (const SystemDescriptor &other)=delete
 
 SystemDescriptor (SystemDescriptor &&other)=delete
 
SystemDescriptor & operator= (SystemDescriptor &&other)=delete
 
std::string Key () const
 Returns the unique key.
 
RawInformation Info (int32_t infoCommand) const
 Delivers information based on the given GenTL info command.
 
std::string DisplayName () const
 Returns the display name.
 
std::string VendorName () const
 Returns the vendor name.
 
std::string ModelName () const
 Returns the model name.
 
std::string Version () const
 Returns the version.
 
std::string TLType () const
 Returns the TL (transport layer) type.
 
std::string CTIFileName () const
 Returns the file name of the GenTL producer library this system belongs to.
 
std::string CTIFullPath () const
 Returns the full path of the GenTL producer library this system belongs to.
 
uint32_t GenTLVersionMajor () const
 Returns the GenTL major version of the GenTL producer library this system belongs to.
 
uint32_t GenTLVersionMinor () const
 Returns the GenTL minor version of the GenTL producer library this system belongs to.
 
peak::core::CharacterEncoding CharacterEncoding () const
 Returns the character encoding of the GenTL producer library this system belongs to.
 
std::shared_ptr< ProducerLibrary > ParentLibrary () const
 Returns the parent library.
 
std::shared_ptr< System > OpenSystem ()
 Opens the system.
 
std::shared_ptr< System > OpenedSystem () const
 Returns the System that was opened with this SystemDescriptor.
 
bool IsOpened () const
 Returns if the system is currently opened or not.
 
- Public Member Functions inherited from peak::core::ModuleDescriptor
 ModuleDescriptor ()=default
 
virtual ~ModuleDescriptor ()=default
 
 ModuleDescriptor (const ModuleDescriptor &other)=delete
 
ModuleDescriptor & operator= (const ModuleDescriptor &other)=delete
 
 ModuleDescriptor (ModuleDescriptor &&other)=delete
 
ModuleDescriptor & operator= (ModuleDescriptor &&other)=delete
 
std::string ID () const
 Returns the ID of the described module.
 

Detailed Description

Encapsulates the GenTL functions associated with the GenTL System module's ID.

This class allows to query information about the GenTL System module without opening it. Furthermore, it enables you to open the GenTL System module.

Constructor & Destructor Documentation

◆ SystemDescriptor() [1/3]

peak::core::SystemDescriptor::SystemDescriptor ( )
delete

◆ ~SystemDescriptor()

peak::core::SystemDescriptor::~SystemDescriptor ( )
overridedefault

◆ SystemDescriptor() [2/3]

peak::core::SystemDescriptor::SystemDescriptor ( const SystemDescriptor & other)
delete

◆ SystemDescriptor() [3/3]

peak::core::SystemDescriptor::SystemDescriptor ( SystemDescriptor && other)
delete

Member Function Documentation

◆ CharacterEncoding()

peak::core::CharacterEncoding peak::core::SystemDescriptor::CharacterEncoding ( ) const
inline

Returns the character encoding of the GenTL producer library this system belongs to.

Returns
Character encoding of the GenTL producer library
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ CTIFileName()

std::string peak::core::SystemDescriptor::CTIFileName ( ) const
inline

Returns the file name of the GenTL producer library this system belongs to.

Returns
File name of the GenTL producer library
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ CTIFullPath()

std::string peak::core::SystemDescriptor::CTIFullPath ( ) const
inline

Returns the full path of the GenTL producer library this system belongs to.

Returns
Full path of the GenTL producer library
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ DisplayName()

std::string peak::core::SystemDescriptor::DisplayName ( ) const
inline

Returns the display name.

Returns
Display name
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ GenTLVersionMajor()

uint32_t peak::core::SystemDescriptor::GenTLVersionMajor ( ) const
inline

Returns the GenTL major version of the GenTL producer library this system belongs to.

Returns
GenTL major version of the GenTL producer library
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ GenTLVersionMinor()

uint32_t peak::core::SystemDescriptor::GenTLVersionMinor ( ) const
inline

Returns the GenTL minor version of the GenTL producer library this system belongs to.

Returns
GenTL minor version of the GenTL producer library
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ Info()

RawInformation peak::core::SystemDescriptor::Info ( int32_t infoCommand) const
inline

Delivers information based on the given GenTL info command.

Parameters
[in]infoCommandThe GenTL info command.

This function can be used to query information going beyond the predefined info functions, based on the GenTL info commands of the corresponding module.

Example (error handling is omitted):

auto info = object->Info(GenTL::XX_INFO_XX);
// Cast depending on the delivered data type
if (info.dataType == GenTL::INFO_DATATYPE_UINT64)
{
uint64_t uint64Var = *reinterpret_cast<const uint64_t*>(info.data.data());
// Do something with the information
}
else if (infoDataTypeVar == GenTL::INFO_DATATYPE_INT64)
{
...
}
...
Returns
Raw information according to the passed info command
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ IsOpened()

bool peak::core::SystemDescriptor::IsOpened ( ) const
inline

Returns if the system is currently opened or not.

Returns
true if open, false if not
Since
1.7

◆ Key()

std::string peak::core::SystemDescriptor::Key ( ) const
inline

Returns the unique key.

The returned key is unique even across different producer libraries.

Returns
Unique key
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ ModelName()

std::string peak::core::SystemDescriptor::ModelName ( ) const
inline

Returns the model name.

Returns
Model name
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ OpenedSystem()

std::shared_ptr< System > peak::core::SystemDescriptor::OpenedSystem ( ) const
inline

Returns the System that was opened with this SystemDescriptor.

Returns
Opened System
Since
1.0
Exceptions
BadAccessExceptionSystem is not open

◆ OpenSystem()

std::shared_ptr< System > peak::core::SystemDescriptor::OpenSystem ( )
inline

Opens the system.

Returns
Opened system
Since
1.0
Exceptions
BadAccessExceptionAccess denied
InternalErrorExceptionAn internal error has occurred.

◆ operator=() [1/2]

SystemDescriptor & peak::core::SystemDescriptor::operator= ( const SystemDescriptor & other)
delete

◆ operator=() [2/2]

SystemDescriptor & peak::core::SystemDescriptor::operator= ( SystemDescriptor && other)
delete

◆ ParentLibrary()

std::shared_ptr< ProducerLibrary > peak::core::SystemDescriptor::ParentLibrary ( ) const
inline

Returns the parent library.

Returns
Parent library
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ TLType()

std::string peak::core::SystemDescriptor::TLType ( ) const
inline

Returns the TL (transport layer) type.

Returns
TL type
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ VendorName()

std::string peak::core::SystemDescriptor::VendorName ( ) const
inline

Returns the vendor name.

Returns
Vendor name
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

◆ Version()

std::string peak::core::SystemDescriptor::Version ( ) const
inline

Returns the version.

Returns
Version
Since
1.0
Exceptions
InternalErrorExceptionAn internal error has occurred.

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