CVB++ 14.0
NodeMapEnumerator Class Referencefinal

Lazy enumeration of node maps.
More...

#include <cvb/genapi/node_map_enumerator.hpp>

Public Member Functions

 NodeMapEnumerator (NodeMapEnumerator &&other)=default
 Move constructor. More...
 
NodeMapEnumeratoroperator= (NodeMapEnumerator &&other)=default
 Move operator. More...
 
void * Handle () const noexcept
 Classic API device handle. More...
 
std::vector< StringNames () const
 Get the names of all available node maps. More...
 
NodeMapPtr operator[] (const String &name) const
 Name based node map access. More...
 
NodeMapPtr NodeMap (const String &name) const
 Name based node map access. More...
 

Static Public Member Functions

template<class T >
static NodeMapEnumerator FromObject (const T &object)
 Create a node map enumerator for a given object. More...
 

Detailed Description

Lazy enumeration of node maps.

Enumerates node maps (lazy) that belong to a arbitrary object respectively it's handle on demand.

Attention
Access to this class is not thread safe.
Examples
Cvb/CppPointCloudAcquisition.

Constructor & Destructor Documentation

◆ NodeMapEnumerator()

NodeMapEnumerator ( NodeMapEnumerator &&  other)
default

Move constructor.

Parameters
[in]otherThe other object.
Exceptions
Doesnot throw any exception.

Member Function Documentation

◆ FromObject()

static NodeMapEnumerator FromObject ( const T &  object)
inlinestatic

Create a node map enumerator for a given object.

Parameters
[in]objectThat has a handle.
Exceptions
Anyexception derived from std::exception including CvbException.
Attention
The node map enumerator shares the lifetime of the given object. In order to free resources held by the object the enumerator must also be destroyed. This method will only throw if sharing fails.

◆ Handle()

void * Handle ( ) const
inlinenoexcept

Classic API device handle.

Returns
Classic API handle.
Exceptions
Doesnot throw any exception.

It is normally not necessary to work with this handle.

◆ Names()

std::vector< String > Names ( ) const
inline

Get the names of all available node maps.

Returns
A list of all node map names
Exceptions
Anyexception derived from std::exception including CvbException.

The list may be empty.

◆ NodeMap()

NodeMapPtr NodeMap ( const String name) const
inline

Name based node map access.

Parameters
[in]nameName of the node map.
Returns
A pointer to the node map
Exceptions
Anyexception derived from std::exception including CvbException.

If the node map does not exists the access will throw.

◆ operator=()

NodeMapEnumerator & operator= ( NodeMapEnumerator &&  other)
default

Move operator.

Parameters
[in]otherThe other object.
Returns
The object
Exceptions
Doesnot throw any exception.

◆ operator[]()

NodeMapPtr operator[] ( const String name) const
inline

Name based node map access.

Parameters
[in]nameName of the node map.
Returns
A pointer to the node map
Exceptions
Anyexception derived from std::exception including CvbException.

If the node map does not exists the access will throw.