OpenMesh::Kernel_OSG::oPropertyT< GeoProperty > Class Template Reference

#include <PropertyT.hh>

Inheritance diagram for OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef field_t::StoredType element_t
typedef property_t::StoredFieldType field_t
typedef property_t::PtrType property_ptr_t
typedef GeoProperty property_t
typedef field_t::StoredType value_type

Public Member Functions

void clear (void)
 Clear all elements and free memory.
virtual oPropertyT< property_t > * clone () const
 Return a deep copy of self.
const element_tdata () const
virtual size_t element_size () const
 Size of one element in bytes or UnknownSize if not known.
virtual size_t n_elements () const
 Number of elements in property.
oPropertyToperator= (const oPropertyT &_rhs)
const element_toperator[] (size_t idx) const
element_toperator[] (size_t idx)
 oPropertyT (const std::string &_name="<unknown>")
 oPropertyT (property_ptr_t _geo_prop, const std::string &_name="<unknown>")
const property_ptr_tosg_ptr () const
property_ptr_tosg_ptr ()
virtual void push_back ()
 Extend the number of elements by one.
virtual void reserve (size_t _n)
 Reserve memory for n elements.
virtual void resize (size_t _n)
 Resize storage to hold n elements.
virtual size_t restore (std::istream &_istr, bool _swap)
virtual void set_persistent (bool _yn)
virtual size_t store (std::ostream &_ostr, bool _swap) const
 Store self as one binary block.
virtual void swap (size_t _i0, size_t _i1)
 Let two elements swap their storage place.
virtual ~oPropertyT ()

Protected Attributes

property_ptr_t data_

Private Member Functions

 oPropertyT (const oPropertyT &)
void osg_init_check (void)

Detailed Description

template<typename GeoProperty>
class OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >

Property adaptor for OpenSG GeoProperties

This class bridges the interfaces of OpenMesh properties and OpenSG GeoProperties. The PropertyKernelT uses these adaptors to add all necessary property functions to the kernel, while the AttribKernelT extends the kernel with the standard properites. Finally the ArrayKernelT completes the kernel build with a specialized version of the garbage collections since the GeoIndices require special handling.

Attention:
Data will be shared with a geometry core when linking a mesh with a OpenSG geometry node using Kernel_OSG::bind.

Definition at line 85 of file PropertyT.hh.


Member Typedef Documentation

template<typename GeoProperty>
typedef field_t::StoredType OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::element_t

Definition at line 94 of file PropertyT.hh.

template<typename GeoProperty>
typedef property_t::StoredFieldType OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::field_t

Definition at line 93 of file PropertyT.hh.

template<typename GeoProperty>
typedef property_t::PtrType OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::property_ptr_t

Reimplemented in OpenMesh::Kernel_OSG::FP::GeoIndicesUI32< IsTriMesh >.

Definition at line 91 of file PropertyT.hh.

template<typename GeoProperty>
typedef GeoProperty OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::property_t

Definition at line 90 of file PropertyT.hh.

template<typename GeoProperty>
typedef field_t::StoredType OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::value_type

Definition at line 95 of file PropertyT.hh.


Constructor & Destructor Documentation

template<typename GeoProperty>
OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::oPropertyT ( property_ptr_t  _geo_prop,
const std::string &  _name = "<unknown>" 
) [inline]

Definition at line 100 of file PropertyT.hh.

template<typename GeoProperty>
OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::oPropertyT ( const std::string &  _name = "<unknown>"  )  [inline]

Definition at line 108 of file PropertyT.hh.

template<typename GeoProperty>
virtual OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::~oPropertyT (  )  [inline, virtual]

Definition at line 119 of file PropertyT.hh.

template<typename GeoProperty>
OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::oPropertyT ( const oPropertyT< GeoProperty > &   )  [private]

Member Function Documentation

template<typename GeoProperty>
void OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::clear ( void   )  [inline, virtual]

Clear all elements and free memory.

Implements OpenMesh::BaseProperty.

Definition at line 179 of file PropertyT.hh.

template<typename GeoProperty>
virtual oPropertyT<property_t>* OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::clone (  )  const [inline, virtual]

Return a deep copy of self.

Implements OpenMesh::BaseProperty.

Definition at line 142 of file PropertyT.hh.

template<typename GeoProperty>
const element_t* OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::data (  )  const [inline]

Definition at line 191 of file PropertyT.hh.

template<typename GeoProperty>
virtual size_t OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::element_size (  )  const [inline, virtual]

Size of one element in bytes or UnknownSize if not known.

Implements OpenMesh::BaseProperty.

Definition at line 167 of file PropertyT.hh.

template<typename GeoProperty>
virtual size_t OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::n_elements (  )  const [inline, virtual]

Number of elements in property.

Implements OpenMesh::BaseProperty.

Definition at line 164 of file PropertyT.hh.

template<typename GeoProperty>
oPropertyT& OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::operator= ( const oPropertyT< GeoProperty > &  _rhs  )  [inline]

Definition at line 124 of file PropertyT.hh.

template<typename GeoProperty>
const element_t& OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::operator[] ( size_t  idx  )  const [inline]

Definition at line 197 of file PropertyT.hh.

template<typename GeoProperty>
element_t& OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::operator[] ( size_t  idx  )  [inline]

Definition at line 194 of file PropertyT.hh.

template<typename GeoProperty>
void OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::osg_init_check ( void   )  [inline, private]

Definition at line 208 of file PropertyT.hh.

template<typename GeoProperty>
const property_ptr_t& OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::osg_ptr (  )  const [inline]

Definition at line 187 of file PropertyT.hh.

template<typename GeoProperty>
property_ptr_t& OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::osg_ptr (  )  [inline]

Definition at line 184 of file PropertyT.hh.

template<typename GeoProperty>
virtual void OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::push_back (  )  [inline, virtual]

Extend the number of elements by one.

Implements OpenMesh::BaseProperty.

Definition at line 138 of file PropertyT.hh.

template<typename GeoProperty>
virtual void OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::reserve ( size_t  _n  )  [inline, virtual]

Reserve memory for n elements.

Implements OpenMesh::BaseProperty.

Reimplemented in OpenMesh::Kernel_OSG::FP::GeoIndicesUI32< IsTriMesh >.

Definition at line 136 of file PropertyT.hh.

template<typename GeoProperty>
virtual void OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::resize ( size_t  _n  )  [inline, virtual]

Resize storage to hold n elements.

Implements OpenMesh::BaseProperty.

Reimplemented in OpenMesh::Kernel_OSG::FP::GeoIndicesUI32< IsTriMesh >.

Definition at line 137 of file PropertyT.hh.

template<typename GeoProperty>
virtual size_t OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::restore ( std::istream &  _istr,
bool  _swap 
) [inline, virtual]

Restore self from a binary block. Uses reserve() to set the size of self before restoring.

Implements OpenMesh::BaseProperty.

Definition at line 173 of file PropertyT.hh.

template<typename GeoProperty>
virtual void OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::set_persistent ( bool  _yn  )  [inline, virtual]

Enable or disable persistency. Self must be a named property to enable persistency.

Implements OpenMesh::BaseProperty.

Definition at line 159 of file PropertyT.hh.

template<typename GeoProperty>
virtual size_t OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::store ( std::ostream &  _ostr,
bool  _swap 
) const [inline, virtual]

Store self as one binary block.

Implements OpenMesh::BaseProperty.

Definition at line 170 of file PropertyT.hh.

template<typename GeoProperty>
virtual void OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::swap ( size_t  _i0,
size_t  _i1 
) [inline, virtual]

Let two elements swap their storage place.

Implements OpenMesh::BaseProperty.

Reimplemented in OpenMesh::Kernel_OSG::FP::GeoIndicesUI32< IsTriMesh >.

Definition at line 139 of file PropertyT.hh.


Member Data Documentation

template<typename GeoProperty>
property_ptr_t OpenMesh::Kernel_OSG::oPropertyT< GeoProperty >::data_ [protected]

Definition at line 203 of file PropertyT.hh.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


openmesh
Author(s): Benjamin Pitzer
autogenerated on Fri Jan 11 12:11:19 2013