Developer Documentation
OpenMesh::ArrayKernel::StatusSetT< HandleT > Class Template Reference

— StatusSet API — More...

#include <OpenFlipper/libs_required/OpenMesh/src/OpenMesh/Core/Mesh/ArrayKernel.hh>

Inheritance diagram for OpenMesh::ArrayKernel::StatusSetT< HandleT >:
OpenMesh::ArrayKernel::AutoStatusSetT< HandleT > OpenMesh::ArrayKernel::ExtStatusSetT< HandleT >

Public Types

typedef HandleT Handle
 

Public Member Functions

 StatusSetT (ArrayKernel &_kernel, const unsigned int _bit_mask)
 
bool is_in (Handle _hnd) const
 
void insert (Handle _hnd)
 
void erase (Handle _hnd)
 
size_t size () const
 Note: 0(n) complexity. More...
 
void clear ()
 Note: O(n) complexity. More...
 

Public Attributes

const unsigned int bit_mask_
 

Protected Attributes

ArrayKernelkernel_
 

Detailed Description

template<class HandleT>
class OpenMesh::ArrayKernel::StatusSetT< HandleT >

— StatusSet API —

Implements a set of connectivity entities (vertex, edge, face, halfedge) using the available bits in the corresponding mesh status field.

Status-based sets are much faster than std::set<> and equivalent in performance to std::vector<bool>, but much more convenient.

Definition at line 637 of file ArrayKernel.hh.

Member Typedef Documentation

◆ Handle

template<class HandleT >
typedef HandleT OpenMesh::ArrayKernel::StatusSetT< HandleT >::Handle

Definition at line 640 of file ArrayKernel.hh.

Constructor & Destructor Documentation

◆ StatusSetT()

template<class HandleT >
OpenMesh::ArrayKernel::StatusSetT< HandleT >::StatusSetT ( ArrayKernel _kernel,
const unsigned int  _bit_mask 
)
inline

Definition at line 649 of file ArrayKernel.hh.

◆ ~StatusSetT()

template<class HandleT >
OpenMesh::ArrayKernel::StatusSetT< HandleT >::~StatusSetT ( )
inline

Definition at line 653 of file ArrayKernel.hh.

Member Function Documentation

◆ clear()

template<class HandleT >
void OpenMesh::ArrayKernel::StatusSetT< HandleT >::clear ( void  )
inline

Note: O(n) complexity.

Definition at line 678 of file ArrayKernel.hh.

◆ erase()

template<class HandleT >
void OpenMesh::ArrayKernel::StatusSetT< HandleT >::erase ( Handle  _hnd)
inline

Definition at line 662 of file ArrayKernel.hh.

◆ insert()

template<class HandleT >
void OpenMesh::ArrayKernel::StatusSetT< HandleT >::insert ( Handle  _hnd)
inline

Definition at line 659 of file ArrayKernel.hh.

◆ is_in()

template<class HandleT >
bool OpenMesh::ArrayKernel::StatusSetT< HandleT >::is_in ( Handle  _hnd) const
inline

Definition at line 656 of file ArrayKernel.hh.

◆ size()

template<class HandleT >
size_t OpenMesh::ArrayKernel::StatusSetT< HandleT >::size ( ) const
inline

Note: 0(n) complexity.

Definition at line 666 of file ArrayKernel.hh.

Member Data Documentation

◆ bit_mask_

template<class HandleT >
const unsigned int OpenMesh::ArrayKernel::StatusSetT< HandleT >::bit_mask_

Definition at line 646 of file ArrayKernel.hh.

◆ kernel_

template<class HandleT >
ArrayKernel& OpenMesh::ArrayKernel::StatusSetT< HandleT >::kernel_
protected

Definition at line 643 of file ArrayKernel.hh.


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