Logo
Programmer's Guide Baumer GAPI SDK Reference v2.10.0
Classes | Public Member Functions | Static Public Member Functions | Friends | List of all members
BGAPI2::SystemList Class Reference

This class is used to search and list system objects and may be instantiated only once. More...

#include <bgapi2_genicam.hpp>

Classes

class  iterator
 This class provides an iterator that can read or modify any object of the list. More...
 

Public Member Functions

void Add (System *pSystem)
 This function adds a GenTL producer to the system list. It can be used to e.g. load GenTL producer which were not found by the searching procedure of the Refresh function. More...
 
void Refresh ()
 This functions starts the search for GenTL producers with file extension 'cti' and follows a fixed searching procedure. First, the directory containing the application is searched, then the directory containing the BGAPI GenICam-Consumer and then the directories specified in the GenICam variable (see remarks). By using the function SystemList::CreateInstanceFromPath the GenICam variable will be ignored and the specified path is used instead. The found GenTL producers will be inserted into the SystemList. More...
 
bo_uint64 size ()
 This function delivers the number of GenTL producers in the system list. More...
 
void clear ()
 This function removes all GenTL producer from the system list. More...
 
Systemoperator[] (const String &systemid)
 This operator allows the direct access to an object of the system list. More...
 
iterator begin ()
 This function delivers an iterator on the top of the system list. More...
 
iterator end ()
 This function delivers an iterator at the end of the system list. More...
 
iterator find (const String &_keyval)
 This function delivers an iterator on an object that is supposed to be found. If the object cannot be found, this functions delivers with an end-iterator. More...
 

Static Public Member Functions

static SystemListGetInstance ()
 This function creates and delivers a static instance of SystemList. The Instance will be created with the first call of this function. Every following call delivers always the same instance until the function ReleaseInstance is called. This approach makes sure that only one instance of this class can be created. More...
 
static void ReleaseInstance ()
 This function releases the static instance of SystemList. More...
 
static SystemListCreateInstanceFromPath (String producerpath)
 This function creates and delivers a specified static instance of SystemList. Only the passed path will be used while searching for GenTL producers. The searching procedure described in function SystemList::Refresh is not used when the Systemlist is created with this function. More...
 

Friends

class System
 

Detailed Description

This class is used to search and list system objects and may be instantiated only once.

Definition at line 54 of file bgapi2_genicam.hpp.

Member Function Documentation

◆ Add()

BGAPI2::SystemList::Add ( System pSystem)

This function adds a GenTL producer to the system list. It can be used to e.g. load GenTL producer which were not found by the searching procedure of the Refresh function.

Parameters
pSystemThe GenTL producer to be added.
Returns
void
Exceptions
Exceptions::InvalidParameterExceptionThe passed parameter is not a valid System object.
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ begin()

BGAPI2::SystemList::begin ( )

This function delivers an iterator on the top of the system list.

Returns
iterator The iterator on the top of the system list.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

◆ clear()

BGAPI2::SystemList::clear ( )

This function removes all GenTL producer from the system list.

Returns
void
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

◆ CreateInstanceFromPath()

BGAPI2::SystemList::CreateInstanceFromPath ( String  producerpath)
static

This function creates and delivers a specified static instance of SystemList. Only the passed path will be used while searching for GenTL producers. The searching procedure described in function SystemList::Refresh is not used when the Systemlist is created with this function.

The specified instance of SystemList class is only created when it is used before the first call of function SystemList::GetInstance.

Parameters
producerpathThis is the searching path for GenTL producers.
Returns
The Pointer to the static instance of class SystemList.
Exceptions
Exceptions::ResourceInUseExceptionThis exception will be thrown by repeated use or if the instance was already created by function SystemList::GetInstance.

◆ end()

BGAPI2::SystemList::end ( )

This function delivers an iterator at the end of the system list.

Returns
iterator The iterator at the end of the system list.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

◆ find()

BGAPI2::SystemList::find ( const String _keyval)

This function delivers an iterator on an object that is supposed to be found. If the object cannot be found, this functions delivers with an end-iterator.

Parameters
_keyvalThe ID to the object to be found.
Returns
iterator The iterator to the found object.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

◆ GetInstance()

BGAPI2::SystemList::GetInstance ( )
static

This function creates and delivers a static instance of SystemList. The Instance will be created with the first call of this function. Every following call delivers always the same instance until the function ReleaseInstance is called. This approach makes sure that only one instance of this class can be created.

If the function CreateInstanceFromPath is used before the first call to this function, this function delivers the pointer to the instance created by CreateInstanceFromPath.

Returns
SystemList * The Pointer to the static instance of class SystemList.

◆ operator[]()

BGAPI2::SystemList::operator[] ( const String systemid)

This operator allows the direct access to an object of the system list.

Parameters
systemidFor this ID, the associated system object is delivered.
Returns
System* The requested system object.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::InvalidParameterExceptionNo object in the system list has the passed ID.

◆ Refresh()

BGAPI2::SystemList::Refresh ( )

This functions starts the search for GenTL producers with file extension 'cti' and follows a fixed searching procedure. First, the directory containing the application is searched, then the directory containing the BGAPI GenICam-Consumer and then the directories specified in the GenICam variable (see remarks). By using the function SystemList::CreateInstanceFromPath the GenICam variable will be ignored and the specified path is used instead. The found GenTL producers will be inserted into the SystemList.

Returns
void
Exceptions
Exceptions::ErrorExceptionInternal sytem error, thrown if the GenTL producer couldn't be loaded. Check trace output for a detailed error description.
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.
Remarks
The GenICam variable on 64bit systems is defined as 'GENICAM_GENTL64_PATH', on 32bit systems 'GENICAM_GENTL32_PATH'.
Already found GenTL producers remain unaffected by the Refresh function.
If a GenTL producer is found twice in different directories, it is up to the user to use the correct one.

◆ ReleaseInstance()

BGAPI2::SystemList::ReleaseInstance ( )
static

This function releases the static instance of SystemList.

Returns
void

◆ size()

BGAPI2::SystemList::size ( )

This function delivers the number of GenTL producers in the system list.

Returns
bo_uint64 The number of GenTL producers in the system list.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

The documentation for this class was generated from the following file:
bgapi: BGAPI::Camera Class Reference

Jan, 14 2020
Baumer Optronic GmbH, Badstrasse 30, 01454 D-Radeberg, Tel:+49-3528-4386-0, Fax:+49-3528-4386-86, Email:support.cameras@baumer.com