OpenMesh
|
Property adaptor for OpenSG GeoProperties. More...
#include <OpenMesh/Tools/Kernel_OSG/PropertyT.hh>
Public Member Functions | |
oPropertyT (property_ptr_t _geo_prop, const std::string &_name="<unknown>") | |
oPropertyT (const std::string &_name="<unknown>") | |
oPropertyT & | operator= (const oPropertyT &_rhs) |
virtual void | reserve (size_t _n) |
Reserve memory for n elements. More... | |
virtual void | resize (size_t _n) |
Resize storage to hold n elements. More... | |
virtual void | push_back () |
Extend the number of elements by one. More... | |
virtual void | swap (size_t _i0, size_t _i1) |
Let two elements swap their storage place. More... | |
virtual oPropertyT< property_t > * | clone () const |
Return a deep copy of self. More... | |
virtual void | set_persistent (bool _yn) |
Enable or disable persistency. More... | |
virtual size_t | n_elements () const |
Number of elements in property. More... | |
virtual size_t | element_size () const |
Size of one element in bytes or UnknownSize if not known. More... | |
virtual size_t | store (std::ostream &_ostr, bool _swap) const |
Store self as one binary block. More... | |
virtual size_t | restore (std::istream &_istr, bool _swap) |
Restore self from a binary block. More... | |
void | clear (void) |
Clear all elements and free memory. More... | |
property_ptr_t & | osg_ptr () |
const property_ptr_t & | osg_ptr () const |
const element_t * | data () const |
element_t & | operator[] (size_t idx) |
const element_t & | operator[] (size_t idx) const |
Public Member Functions inherited from OpenMesh::BaseProperty | |
BaseProperty (const std::string &_name="<unknown>", const std::string &_internal_type_name="<unknown>") | |
Default constructor. More... | |
BaseProperty (const BaseProperty &_rhs) | |
Copy constructor. | |
virtual | ~BaseProperty () |
Destructor. | |
virtual void | reserve (size_t _n)=0 |
Reserve memory for n elements. More... | |
virtual void | resize (size_t _n)=0 |
Resize storage to hold n elements. More... | |
virtual void | clear ()=0 |
Clear all elements and free memory. More... | |
virtual void | push_back ()=0 |
Extend the number of elements by one. More... | |
virtual void | swap (size_t _i0, size_t _i1)=0 |
Let two elements swap their storage place. More... | |
virtual void | copy (size_t _io, size_t _i1)=0 |
Copy one element to another. More... | |
virtual BaseProperty * | clone () const =0 |
Return a deep copy of self. More... | |
const std::string & | name () const |
Return the name of the property. | |
const std::string & | internal_type_name () const |
Return internal type name of the property for type safe casting alternative to runtime information. | |
virtual void | stats (std::ostream &_ostr) const |
bool | persistent (void) const |
Returns true if the persistent flag is enabled else false. | |
virtual void | set_persistent (bool _yn)=0 |
Enable or disable persistency. More... | |
virtual std::string | get_storage_name () const =0 |
returns a unique string for the type of the elements More... | |
virtual size_t | n_elements () const =0 |
Number of elements in property. More... | |
virtual size_t | element_size () const =0 |
Size of one element in bytes or UnknownSize if not known. More... | |
virtual size_t | size_of () const |
Return size of property in bytes. More... | |
virtual size_t | size_of (size_t _n_elem) const |
Estimated size of property if it has _n_elem elements. More... | |
virtual size_t | store (std::ostream &_ostr, bool _swap) const =0 |
Store self as one binary block. More... | |
virtual size_t | restore (std::istream &_istr, bool _swap)=0 |
Restore self from a binary block. More... | |
Protected Attributes | |
property_ptr_t | data_ |
Additional Inherited Members | |
Static Public Attributes inherited from OpenMesh::BaseProperty | |
static const size_t | UnknownSize = size_t(-1) |
Indicates an error when a size is returned by a member. | |
Protected Member Functions inherited from OpenMesh::BaseProperty | |
template<typename T > | |
void | check_and_set_persistent (bool _yn) |
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.
|
inlinevirtual |
Clear all elements and free memory.
Implements OpenMesh::BaseProperty.
|
inlinevirtual |
Return a deep copy of self.
Implements OpenMesh::BaseProperty.
|
inlinevirtual |
Size of one element in bytes or UnknownSize if not known.
Implements OpenMesh::BaseProperty.
|
inlinevirtual |
Number of elements in property.
Implements OpenMesh::BaseProperty.
|
inlinevirtual |
Extend the number of elements by one.
Implements OpenMesh::BaseProperty.
|
inlinevirtual |
Reserve memory for n elements.
Implements OpenMesh::BaseProperty.
Reimplemented in OpenMesh::Kernel_OSG::FP::GeoIndicesUI32< IsTriMesh >.
|
inlinevirtual |
Resize storage to hold n elements.
Implements OpenMesh::BaseProperty.
Reimplemented in OpenMesh::Kernel_OSG::FP::GeoIndicesUI32< IsTriMesh >.
|
inlinevirtual |
Restore self from a binary block.
Uses reserve() to set the size of self before restoring.
Implements OpenMesh::BaseProperty.
|
inlinevirtual |
Enable or disable persistency.
Self must be a named property to enable persistency.
Implements OpenMesh::BaseProperty.
|
inlinevirtual |
Store self as one binary block.
Implements OpenMesh::BaseProperty.
|
inlinevirtual |
Let two elements swap their storage place.
Implements OpenMesh::BaseProperty.
Reimplemented in OpenMesh::Kernel_OSG::FP::GeoIndicesUI32< IsTriMesh >.