Public Types | Public Member Functions | Private Types | List of all members
lvr2::BaseBuffer Class Reference

ChannelManager class Store and access AttributeChannels. It expands the MultiChannelMap with downwoards compitibility functions of the old ChannelManager. More...

#include <BaseBuffer.hpp>

Inheritance diagram for lvr2::BaseBuffer:
Inheritance graph
[legend]

Public Types

using base = std::unordered_map< std::string, VariantChannel< T... > >
 
- Public Types inherited from lvr2::VariantChannelMap< T >
using base = std::unordered_map< std::string, VariantChannel< T... > >
 
using elem_type = std::pair< const key_type, val_type >
 
using key_type = std::string
 
template<std::size_t N>
using type_of_index = typename val_type::template type_of_index< N >
 
using types = std::tuple< T... >
 
using val_type = VariantChannel< T... >
 

Public Member Functions

template<typename T >
void addAtomic (T data, const std::string &name)
 Adds an atomic value. Exists only for compatibility reasons. Dont use atomics, they are implemented as Channels. -> memory overhead. More...
 
template<typename T >
void addChannel (typename Channel< T >::Ptr data, const std::string &name)
 Adds a channel pointer to the map. More...
 
template<typename T >
void addChannel (boost::shared_array< T > array, std::string name, size_t n, size_t width)
 Constructs a channel from an boost::shared_array and saves it to the map. More...
 
template<typename T >
void addEmptyChannel (const std::string &name, size_t n, size_t width)
 Adds an empty channel to the map. More...
 
void addEmptyFloatChannel (const std::string &name, size_t n, size_t width)
 Adds an empty float channel to the map. More...
 
void addEmptyIndexChannel (const std::string &name, size_t n, size_t width)
 Adds an empty index channel to the map. More...
 
void addEmptyUCharChannel (const std::string &name, size_t n, size_t width)
 Adds an empty uchar channel to the map. More...
 
void addFloatAtomic (float data, const std::string &name)
 Adds an atomic float value. Exists only for compatibility reasons. Dont use atomics, they are implemented as Channels. -> memory overhead. More...
 
void addFloatChannel (FloatChannelPtr data, const std::string &name)
 Adds a float channel pointer to the map. More...
 
void addFloatChannel (floatArr array, std::string name, size_t n, size_t width)
 Constructs a float channel from an boost::shared_array and saves it to the map. More...
 
void addIndexChannel (IndexChannelPtr data, const std::string &name)
 Adds an index channel pointer to the map. cointer to add. cannel. More...
 
void addIndexChannel (indexArray array, std::string name, size_t n, size_t width)
 Constructs an index channel from an boost::shared_array and saves it to the map. More...
 
void addIntAtomic (int data, const std::string &name)
 Adds an atomic int value. Exists only for compatibility reasons. Dont use atomics, they are implemented as Channels. -> memory overhead. Kept because of api stability. More...
 
void addUCharAtomic (unsigned char data, const std::string &name)
 Adds an atomic uchar value. Exists only for compatibility reasons. Dont use atomics, they are implemented as Channels. -> memory overhead. Kept because of api stability. More...
 
void addUCharChannel (UCharChannelPtr data, const std::string &name)
 Adds an uchar channel pointer to the map. More...
 
void addUCharChannel (ucharArr array, std::string name, size_t n, size_t width)
 Constructs an uchar channel from an boost::shared_array and saves it to the map. More...
 
template<typename T >
size_t channelWidth (const std::string &name) const
 Gets a channels width. More...
 
BaseBuffer clone () const
 
size_t floatChannelWidth (const std::string &name) const
 Gets a float channels width. More...
 
template<typename T >
int getAllChannelsOfType (std::map< std::string, Channel< T > > &channels)
 Returns all channels of type T. More...
 
template<typename T >
int getAllChannelsOfType (std::vector< std::pair< std::string, Channel< T > >> &channels)
 Returns all channels of type T. More...
 
template<typename T >
boost::shared_array< T > getArray (const std::string &name, size_t &n, size_t &w)
 Gets a channel as array. More...
 
template<typename T >
boost::optional< T > getAtomic (const std::string &name)
 Gets an atomic value. More...
 
template<typename T >
Channel< T >::Optional getChannel (const std::string &name)
 Gets a channel and returns it as optional. More...
 
template<typename T >
const Channel< T >::Optional getChannel (const std::string &name) const
 Gets a channel and returns it as optional. More...
 
void getChannel (const std::string &name, FloatChannelOptional &channelOptional)
 Gets a float channel and returns it as optional. More...
 
void getChannel (const std::string &name, IndexChannelOptional &channelOptional)
 Gets an index channel and returns it as optional. More...
 
void getChannel (const std::string &name, UCharChannelOptional &channelOptional)
 Gets an uchar channel and returns it as optional. More...
 
floatArr getFloatArray (const std::string &name, size_t &n, size_t &w)
 Gets a float channel as array. More...
 
floatOptional getFloatAtomic (const std::string &name)
 Gets an atomic float value. More...
 
Channel< float >::Optional getFloatChannel (const std::string &name)
 Gets a float channel and returns it as optional. More...
 
FloatProxy getFloatHandle (unsigned int idx, const std::string &name)
 Get a Handle object (ElementProxy) of a float channel. More...
 
template<typename T >
ElementProxy< T > getHandle (unsigned int idx, const std::string &name)
 Get a Handle object (ElementProxy) of a specific typed channel. More...
 
indexArray getIndexArray (const std::string &name, size_t &n, size_t &w)
 Gets an index channel as array. More...
 
Channel< unsigned int >::Optional getIndexChannel (const std::string &name)
 Gets an index channel and returns it as optional. More...
 
IndexProxy getIndexHandle (unsigned int idx, const std::string &name)
 Get a Handle object (ElementProxy) of an index channel. More...
 
intOptional getIntAtomic (const std::string &name)
 Gets an atomic int value. More...
 
ucharArr getUCharArray (const std::string &name, size_t &n, size_t &w)
 Gets an uchar channel as array. More...
 
ucharOptional getUCharAtomic (const std::string &name)
 Gets an atomic uchar value. More...
 
Channel< unsigned char >::Optional getUCharChannel (const std::string &name)
 Gets an uchar channel and returns it as optional. More...
 
UCharProxy getUCharHandle (unsigned int idx, const std::string &name)
 Get a Handle object (ElementProxy) of an uchar channel. More...
 
template<typename T >
bool hasChannel (const std::string &name) const
 Checks if a channel is available. More...
 
bool hasFloatChannel (const std::string &name) const
 Checks if a float channel is available. More...
 
bool hasIndexChannel (const std::string &name) const
 Checks if an index channel is available. More...
 
bool hasUCharChannel (const std::string &name) const
 Checks if an uchar channel is available. More...
 
size_t indexChannelWidth (const std::string &name) const
 Gets an index channels width. More...
 
template<typename V >
BaseBuffer manipulate (V visitor)
 
template<typename T >
bool removeChannel (const std::string &name)
 Removes a channel with a specific type. If the type is not required use: erase. More...
 
bool removeFloatChannel (const std::string &name)
 Removes a float channel. If the type is not required use: erase. More...
 
bool removeIndexChannel (const std::string &name)
 Removes an index channel. If the type is not required use: erase. More...
 
bool removeUCharChannel (const std::string &name)
 Removes an uchar channel. If the type is not required use: erase. More...
 
size_t ucharChannelWidth (const std::string &name) const
 Gets an uchar channels width. More...
 
- Public Member Functions inherited from lvr2::VariantChannelMap< T >
template<typename U >
void add (const std::string &name, Channel< U > channel)
 Adds an Key + AttributeChannel to the map. More...
 
template<typename U >
void add (const std::string &name)
 Adds an empty channel. More...
 
template<typename U >
void add (const std::string &name, size_t numElements, size_t width)
 Adds an empty channel with size. More...
 
VariantChannelMap< T... > clone () const
 
template<typename U >
iterator< U > erase (iterator< U > it)
 
template<typename U >
Channel< U > & get (const std::string &name)
 Gets AttributeChannel with type U from map as reference. More...
 
template<typename U >
const Channel< U > & get (const std::string &name) const
 Gets AttributeChannel by type U from map. More...
 
template<typename U >
Channel< U >::Optional getOptional (const std::string &name)
 
template<typename U >
const Channel< U >::Optional getOptional (const std::string &name) const
 
template<typename U >
bool is_type (const std::string &name) const
 Checks if key has specific type U. More...
 
template<typename U >
std::vector< std::string > keys ()
 Gets the available keys by a specific type. More...
 
template<typename V >
VariantChannelMap< T... > manipulate (V visitor)
 
template<typename U >
size_t numChannels ()
 Counts the number of channels by a specific type. For total number of channels use "size()". More...
 
int type (const std::string &name) const
 Gets type index of a map entry. More...
 
template<typename U >
iterator< U > typedBegin ()
 
template<typename U >
const_iterator< U > typedBegin () const
 

Private Types

using base = MultiChannelMap
 

Additional Inherited Members

- Static Public Attributes inherited from lvr2::VariantChannelMap< T >
static constexpr std::size_t num_types = val_type::num_types
 

Detailed Description

ChannelManager class Store and access AttributeChannels. It expands the MultiChannelMap with downwoards compitibility functions of the old ChannelManager.

Definition at line 54 of file BaseBuffer.hpp.

Member Typedef Documentation

◆ base [1/2]

Definition at line 55 of file BaseBuffer.hpp.

◆ base [2/2]

using lvr2::VariantChannelMap< T >::base = std::unordered_map<std::string, VariantChannel<T...> >

Definition at line 52 of file VariantChannelMap.hpp.

Member Function Documentation

◆ addAtomic()

template<typename T >
void lvr2::BaseBuffer::addAtomic ( data,
const std::string &  name 
)

Adds an atomic value. Exists only for compatibility reasons. Dont use atomics, they are implemented as Channels. -> memory overhead.

Template Parameters
TType of the atomic value.
Parameters
[in]dataThe atomic data to add to the channel manager.
[in]nameThe key of the atomic value (don't use keys that are already used for channels).

◆ addChannel() [1/2]

template<typename T >
void lvr2::BaseBuffer::addChannel ( typename Channel< T >::Ptr  data,
const std::string &  name 
)

Adds a channel pointer to the map.

Parameters
[in]dataThe channel pointer to add.
[in]nameThe key of the channel.
Template Parameters
TType of the channel.

◆ addChannel() [2/2]

template<typename T >
void lvr2::BaseBuffer::addChannel ( boost::shared_array< T >  array,
std::string  name,
size_t  n,
size_t  width 
)

Constructs a channel from an boost::shared_array and saves it to the map.

Parameters
[in]arrayThe shared array of the data.
[in]nameKey of the channel.
Template Parameters
TType of the channel.

◆ addEmptyChannel()

template<typename T >
void lvr2::BaseBuffer::addEmptyChannel ( const std::string &  name,
size_t  n,
size_t  width 
)

Adds an empty channel to the map.

Parameters
[in]nameKey of the channel.
[in]nNumber of elements.
[in]widthWidth of one element.
Template Parameters
TType of the channel.

◆ addEmptyFloatChannel()

void lvr2::BaseBuffer::addEmptyFloatChannel ( const std::string &  name,
size_t  n,
size_t  width 
)
inline

Adds an empty float channel to the map.

Parameters
[in]nameKey of the channel.
[in]nNumber of elements.
[in]widthWidth of one element.

Definition at line 242 of file BaseBuffer.hpp.

◆ addEmptyIndexChannel()

void lvr2::BaseBuffer::addEmptyIndexChannel ( const std::string &  name,
size_t  n,
size_t  width 
)
inline

Adds an empty index channel to the map.

Parameters
[in]nameKey of the channel.
[in]nNumber of elements.
[in]widthWidth of one element.

Definition at line 264 of file BaseBuffer.hpp.

◆ addEmptyUCharChannel()

void lvr2::BaseBuffer::addEmptyUCharChannel ( const std::string &  name,
size_t  n,
size_t  width 
)
inline

Adds an empty uchar channel to the map.

Parameters
[in]nameKey of the channel.
[in]nNumber of elements.
[in]widthWidth of one element.

Definition at line 253 of file BaseBuffer.hpp.

◆ addFloatAtomic()

void lvr2::BaseBuffer::addFloatAtomic ( float  data,
const std::string &  name 
)
inline

Adds an atomic float value. Exists only for compatibility reasons. Dont use atomics, they are implemented as Channels. -> memory overhead.

Parameters
[in]dataThe atomic data to add to the channel manager.
[in]nameThe key of the atomic value (don't use keys that are already used for channels).

Definition at line 582 of file BaseBuffer.hpp.

◆ addFloatChannel() [1/2]

void lvr2::BaseBuffer::addFloatChannel ( FloatChannelPtr  data,
const std::string &  name 
)
inline

Adds a float channel pointer to the map.

Parameters
[in]dataThe channel pointer to add.
[in]nameKey of the channel.

Definition at line 159 of file BaseBuffer.hpp.

◆ addFloatChannel() [2/2]

void lvr2::BaseBuffer::addFloatChannel ( floatArr  array,
std::string  name,
size_t  n,
size_t  width 
)
inline

Constructs a float channel from an boost::shared_array and saves it to the map.

Parameters
[in]arrayThe shared array of the data.
[in]nameKey of the channel.

Definition at line 208 of file BaseBuffer.hpp.

◆ addIndexChannel() [1/2]

void lvr2::BaseBuffer::addIndexChannel ( IndexChannelPtr  data,
const std::string &  name 
)
inline

Adds an index channel pointer to the map. cointer to add. cannel.

Definition at line 179 of file BaseBuffer.hpp.

◆ addIndexChannel() [2/2]

void lvr2::BaseBuffer::addIndexChannel ( indexArray  array,
std::string  name,
size_t  n,
size_t  width 
)
inline

Constructs an index channel from an boost::shared_array and saves it to the map.

Parameters
[in]arrayThe shared array of the data.
[in]nameKey of the channel.

Definition at line 198 of file BaseBuffer.hpp.

◆ addIntAtomic()

void lvr2::BaseBuffer::addIntAtomic ( int  data,
const std::string &  name 
)
inline

Adds an atomic int value. Exists only for compatibility reasons. Dont use atomics, they are implemented as Channels. -> memory overhead. Kept because of api stability.

Parameters
[in]dataThe atomic data to add to the channel manager.
[in]nameThe key of the atomic value (don't use keys that are already used for channels).

Definition at line 608 of file BaseBuffer.hpp.

◆ addUCharAtomic()

void lvr2::BaseBuffer::addUCharAtomic ( unsigned char  data,
const std::string &  name 
)
inline

Adds an atomic uchar value. Exists only for compatibility reasons. Dont use atomics, they are implemented as Channels. -> memory overhead. Kept because of api stability.

Parameters
[in]dataThe atomic data to add to the channel manager.
[in]nameThe key of the atomic value (don't use keys that are already used for channels).

Definition at line 595 of file BaseBuffer.hpp.

◆ addUCharChannel() [1/2]

void lvr2::BaseBuffer::addUCharChannel ( UCharChannelPtr  data,
const std::string &  name 
)
inline

Adds an uchar channel pointer to the map.

Parameters
[in]dataThe channel pointer to add.
[in]nameKey of the channel.

Definition at line 169 of file BaseBuffer.hpp.

◆ addUCharChannel() [2/2]

void lvr2::BaseBuffer::addUCharChannel ( ucharArr  array,
std::string  name,
size_t  n,
size_t  width 
)
inline

Constructs an uchar channel from an boost::shared_array and saves it to the map.

Parameters
[in]arrayThe shared array of the data.
[in]nameKey of the channel.

Definition at line 220 of file BaseBuffer.hpp.

◆ channelWidth()

template<typename T >
size_t lvr2::BaseBuffer::channelWidth ( const std::string &  name) const

Gets a channels width.

Parameters
[in]nameKey of the channel.
Template Parameters
Ttype of channel to search for.
Returns
0 if not found, otherwise the channels width.

◆ clone()

BaseBuffer lvr2::BaseBuffer::clone ( ) const
inline

Definition at line 678 of file BaseBuffer.hpp.

◆ floatChannelWidth()

size_t lvr2::BaseBuffer::floatChannelWidth ( const std::string &  name) const
inline

Gets a float channels width.

Parameters
[in]nameKey of the channel.
Returns
0 if not found, otherwise the channels width.

Definition at line 87 of file BaseBuffer.hpp.

◆ getAllChannelsOfType() [1/2]

template<typename T >
int lvr2::BaseBuffer::getAllChannelsOfType ( std::map< std::string, Channel< T > > &  channels)
inline

Returns all channels of type T.

Template Parameters
TThe type of the channels.
Parameters
channelsThe vector of channel pairs(name, Channel).
Returns
The type index in the MultiChannelMap.

Definition at line 338 of file BaseBuffer.hpp.

◆ getAllChannelsOfType() [2/2]

template<typename T >
int lvr2::BaseBuffer::getAllChannelsOfType ( std::vector< std::pair< std::string, Channel< T > >> &  channels)
inline

Returns all channels of type T.

Template Parameters
TThe type of the channels.
Parameters
channelsThe vector of channel pairs(name, Channel).
Returns
The type index in the MultiChannelMap.

Definition at line 356 of file BaseBuffer.hpp.

◆ getArray()

template<typename T >
boost::shared_array<T> lvr2::BaseBuffer::getArray ( const std::string &  name,
size_t &  n,
size_t &  w 
)

Gets a channel as array.

Template Parameters
TType of the channel.
Parameters
[out]nNumber of elements stored in the channel.
[out]wWidth of an element.
[in]nameKey of the channel.
Returns
boost::shared_array<T> The data pointer. Empty if the channel was not found.

◆ getAtomic()

template<typename T >
boost::optional<T> lvr2::BaseBuffer::getAtomic ( const std::string &  name)

Gets an atomic value.

Template Parameters
TThe atomic values type.
Parameters
[in]nameKey of the atomic value.
Returns
The atomic value as optional. The optional is set if the atomic value was found.

◆ getChannel() [1/5]

template<typename T >
Channel<T>::Optional lvr2::BaseBuffer::getChannel ( const std::string &  name)

Gets a channel and returns it as optional.

Parameters
[in]nameKey of the channel.
Template Parameters
TType of the channel.
Returns
An OptionalChannel which is filled if the channel was found.

◆ getChannel() [2/5]

template<typename T >
const Channel<T>::Optional lvr2::BaseBuffer::getChannel ( const std::string &  name) const

Gets a channel and returns it as optional.

Parameters
[in]nameKey of the channel.
Template Parameters
TType of the channel.
Returns
An OptionalChannel which is filled if the channel was found.

◆ getChannel() [3/5]

void lvr2::BaseBuffer::getChannel ( const std::string &  name,
FloatChannelOptional channelOptional 
)
inline

Gets a float channel and returns it as optional.

Parameters
[in]nameKey of the channel.
[out]channelOptionalThe float channel optional.

Definition at line 426 of file BaseBuffer.hpp.

◆ getChannel() [4/5]

void lvr2::BaseBuffer::getChannel ( const std::string &  name,
IndexChannelOptional channelOptional 
)
inline

Gets an index channel and returns it as optional.

Parameters
[in]nameKey of the channel.
[out]channelOptionalThe index channel optional.

Definition at line 437 of file BaseBuffer.hpp.

◆ getChannel() [5/5]

void lvr2::BaseBuffer::getChannel ( const std::string &  name,
UCharChannelOptional channelOptional 
)
inline

Gets an uchar channel and returns it as optional.

Parameters
[in]nameKey of the channel.
[out]channelOptionalThe uchar channel optional.

Definition at line 448 of file BaseBuffer.hpp.

◆ getFloatArray()

floatArr lvr2::BaseBuffer::getFloatArray ( const std::string &  name,
size_t &  n,
size_t &  w 
)
inline

Gets a float channel as array.

Parameters
[out]nNumber of elements stored in the channel.
[out]wWidth of an element.
[in]nameKey of the channel.
Returns
floatArr The data pointer. Empty if the channel was not found.

Definition at line 528 of file BaseBuffer.hpp.

◆ getFloatAtomic()

floatOptional lvr2::BaseBuffer::getFloatAtomic ( const std::string &  name)
inline

Gets an atomic float value.

Parameters
[in]nameKey of the atomic value.
Returns
The atomic value as optional. The optional is set if the atomic value was found.

Definition at line 636 of file BaseBuffer.hpp.

◆ getFloatChannel()

Channel<float>::Optional lvr2::BaseBuffer::getFloatChannel ( const std::string &  name)
inline

Gets a float channel and returns it as optional.

Parameters
[in]nameKey of the channel.
Returns
An OptionalChannel which is filled if the channel was found.

Definition at line 393 of file BaseBuffer.hpp.

◆ getFloatHandle()

FloatProxy lvr2::BaseBuffer::getFloatHandle ( unsigned int  idx,
const std::string &  name 
)
inline

Get a Handle object (ElementProxy) of a float channel.

Parameters
[in]idxThe index of the element to access.
[in]nameKey of the channel.
Returns
FloatProxy The handle.

Definition at line 475 of file BaseBuffer.hpp.

◆ getHandle()

template<typename T >
ElementProxy<T> lvr2::BaseBuffer::getHandle ( unsigned int  idx,
const std::string &  name 
)

Get a Handle object (ElementProxy) of a specific typed channel.

Template Parameters
TThe type of the channel.
Parameters
[in]idxThe index of the element to access.
[in]nameKey of the channel.
Returns
ElementProxy<T> The handle.

◆ getIndexArray()

indexArray lvr2::BaseBuffer::getIndexArray ( const std::string &  name,
size_t &  n,
size_t &  w 
)
inline

Gets an index channel as array.

Parameters
[out]nNumber of elements stored in the channel.
[out]wWidth of an element.
[in]nameKey of the channel.
Returns
indexArray The data pointer. Empty if the channel was not found.

Definition at line 554 of file BaseBuffer.hpp.

◆ getIndexChannel()

Channel<unsigned int>::Optional lvr2::BaseBuffer::getIndexChannel ( const std::string &  name)
inline

Gets an index channel and returns it as optional.

Parameters
[in]nameKey of the channel.
Returns
An OptionalChannel which is filled if the channel was found.

Definition at line 415 of file BaseBuffer.hpp.

◆ getIndexHandle()

IndexProxy lvr2::BaseBuffer::getIndexHandle ( unsigned int  idx,
const std::string &  name 
)
inline

Get a Handle object (ElementProxy) of an index channel.

Parameters
[in]idxThe index of the element to access.
[in]nameKey of the channel.
Returns
IndexProxy The handle.

Definition at line 499 of file BaseBuffer.hpp.

◆ getIntAtomic()

intOptional lvr2::BaseBuffer::getIntAtomic ( const std::string &  name)
inline

Gets an atomic int value.

Parameters
[in]nameKey of the atomic value.
Returns
The atomic value as optional. The optional is set if the atomic value was found.

Definition at line 662 of file BaseBuffer.hpp.

◆ getUCharArray()

ucharArr lvr2::BaseBuffer::getUCharArray ( const std::string &  name,
size_t &  n,
size_t &  w 
)
inline

Gets an uchar channel as array.

Parameters
[out]nNumber of elements stored in the channel.
[out]wWidth of an element.
[in]nameKey of the channel.
Returns
ucharArr The data pointer. Empty if the channel was not found.

Definition at line 541 of file BaseBuffer.hpp.

◆ getUCharAtomic()

ucharOptional lvr2::BaseBuffer::getUCharAtomic ( const std::string &  name)
inline

Gets an atomic uchar value.

Parameters
[in]nameKey of the atomic value.
Returns
The atomic value as optional. The optional is set if the atomic value was found.

Definition at line 649 of file BaseBuffer.hpp.

◆ getUCharChannel()

Channel<unsigned char>::Optional lvr2::BaseBuffer::getUCharChannel ( const std::string &  name)
inline

Gets an uchar channel and returns it as optional.

Parameters
[in]nameKey of the channel.
Returns
An OptionalChannel which is filled if the channel was found.

Definition at line 404 of file BaseBuffer.hpp.

◆ getUCharHandle()

UCharProxy lvr2::BaseBuffer::getUCharHandle ( unsigned int  idx,
const std::string &  name 
)
inline

Get a Handle object (ElementProxy) of an uchar channel.

Parameters
[in]idxThe index of the element to access.
[in]nameKey of the channel.
Returns
UCharProxy The handle.

Definition at line 487 of file BaseBuffer.hpp.

◆ hasChannel()

template<typename T >
bool lvr2::BaseBuffer::hasChannel ( const std::string &  name) const

Checks if a channel is available.

Parameters
[in]nameKey of the channel.
Template Parameters
TType of the channel.

◆ hasFloatChannel()

bool lvr2::BaseBuffer::hasFloatChannel ( const std::string &  name) const
inline

Checks if a float channel is available.

Parameters
[in]nameKey of the channel.

Definition at line 127 of file BaseBuffer.hpp.

◆ hasIndexChannel()

bool lvr2::BaseBuffer::hasIndexChannel ( const std::string &  name) const
inline

Checks if an index channel is available.

Parameters
[in]nameKey of the channel.

Definition at line 136 of file BaseBuffer.hpp.

◆ hasUCharChannel()

bool lvr2::BaseBuffer::hasUCharChannel ( const std::string &  name) const
inline

Checks if an uchar channel is available.

Parameters
[in]nameKey of the channel.

Definition at line 118 of file BaseBuffer.hpp.

◆ indexChannelWidth()

size_t lvr2::BaseBuffer::indexChannelWidth ( const std::string &  name) const
inline

Gets an index channels width.

Parameters
[in]nameKey of the channel.
Returns
0 if not found, otherwise the channels width.

Definition at line 97 of file BaseBuffer.hpp.

◆ manipulate()

template<typename V >
BaseBuffer lvr2::BaseBuffer::manipulate ( visitor)
inline

Definition at line 668 of file BaseBuffer.hpp.

◆ removeChannel()

template<typename T >
bool lvr2::BaseBuffer::removeChannel ( const std::string &  name)

Removes a channel with a specific type. If the type is not required use: erase.

Template Parameters
TType of the channel.
Parameters
[in]nameKey of the channel.
Returns
true If the channel was removed.
false If no channel was removed.

◆ removeFloatChannel()

bool lvr2::BaseBuffer::removeFloatChannel ( const std::string &  name)
inline

Removes a float channel. If the type is not required use: erase.

Parameters
[in]nameKey of the channel.
Returns
true If the channel was removed.
false If no channel was removed.

Definition at line 306 of file BaseBuffer.hpp.

◆ removeIndexChannel()

bool lvr2::BaseBuffer::removeIndexChannel ( const std::string &  name)
inline

Removes an index channel. If the type is not required use: erase.

Parameters
[in]nameKey of the channel.
Returns
true If the channel was removed.
false If no channel was removed.

Definition at line 293 of file BaseBuffer.hpp.

◆ removeUCharChannel()

bool lvr2::BaseBuffer::removeUCharChannel ( const std::string &  name)
inline

Removes an uchar channel. If the type is not required use: erase.

Parameters
[in]nameKey of the channel.
Returns
true If the channel was removed.
false If no channel was removed.

Definition at line 319 of file BaseBuffer.hpp.

◆ ucharChannelWidth()

size_t lvr2::BaseBuffer::ucharChannelWidth ( const std::string &  name) const
inline

Gets an uchar channels width.

Parameters
[in]nameKey of the channel.
Returns
0 if not found, otherwise the channels width.

Definition at line 77 of file BaseBuffer.hpp.


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


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Mon Feb 28 2022 22:46:11