Developer Documentation
OpenMesh::PropertyContainer Class Reference

A a container for properties. More...

#include <OpenFlipper/libs_required/OpenMesh/src/OpenMesh/Core/Utils/PropertyContainer.hh>

Public Types

typedef std::vector< BaseProperty * > Properties
 

Public Member Functions

const Propertiesproperties () const
 
size_t size () const
 
 PropertyContainer (const PropertyContainer &_rhs)
 
PropertyContaineroperator= (const PropertyContainer &_rhs)
 
template<class T >
BasePropHandleT< T > add (const T &, const std::string &_name="<unknown>")
 
template<class T >
BasePropHandleT< T > handle (const T &, const std::string &_name) const
 
BasePropertyproperty (const std::string &_name) const
 
template<class T >
PropertyT< T > & property (BasePropHandleT< T > _h)
 
template<class T >
const PropertyT< T > & property (BasePropHandleT< T > _h) const
 
template<class T >
void remove (BasePropHandleT< T > _h)
 
void clear ()
 
void reserve (size_t _n) const
 
void resize (size_t _n) const
 
void resize_if_smaller (size_t _n) const
 
void swap (size_t _i0, size_t _i1) const
 

Protected Types

typedef Properties::iterator iterator
 
typedef Properties::const_iterator const_iterator
 

Protected Member Functions

size_t _add (BaseProperty *_bp)
 
BaseProperty_property (size_t _idx)
 
const BaseProperty_property (size_t _idx) const
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 

Private Attributes

Properties properties_
 

Friends

class BaseKernel
 

Detailed Description

A a container for properties.

Definition at line 62 of file PropertyContainer.hh.

Member Function Documentation

◆ reserve()

void OpenMesh::PropertyContainer::reserve ( size_t  _n) const
inline

Reserves space for _n elements in all property vectors.

Definition at line 244 of file PropertyContainer.hh.

◆ resize()

void OpenMesh::PropertyContainer::resize ( size_t  _n) const
inline

Resizes all property vectors to the specified size.

Definition at line 251 of file PropertyContainer.hh.

◆ resize_if_smaller()

void OpenMesh::PropertyContainer::resize_if_smaller ( size_t  _n) const
inline

Same as

See also
resize() but ignores property vectors that have a size larger than _n.

Use this method instead of

See also
resize() if you plan to frequently reduce and enlarge the property container and you don't want to waste time reallocating the property vectors every time.

Definition at line 263 of file PropertyContainer.hh.

◆ swap()

void OpenMesh::PropertyContainer::swap ( size_t  _i0,
size_t  _i1 
) const
inline

Swaps the items with index _i0 and index _i1 in all property vectors.

Definition at line 271 of file PropertyContainer.hh.


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