OpenMesh
OpenMesh::PropertyContainer Class Reference

A a container for properties. More...

#include <OpenMesh/Core/Utils/PropertyContainer.hh>

Public Types

typedef std::vector< BaseProperty * > Properties
 

Public Member Functions

const Properties & properties () 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
 Reserves space for _n elements in all property vectors.
 
void resize (size_t _n) const
 Resizes all property vectors to the specified size.
 
void resize_if_smaller (size_t _n) const
 Same as. More...
 
void swap (size_t _i0, size_t _i1) const
 Swaps the items with index _i0 and index _i1 in all property vectors.
 

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
 

Friends

class BaseKernel
 

Detailed Description

A a container for properties.

Member Function Documentation

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.

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

Project OpenMesh, ©  Computer Graphics Group, RWTH Aachen. Documentation generated using doxygen .