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


class BaseKernel

Detailed Description

A a container for properties.

Member Function Documentation

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

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 .