OpenMesh
OpenMesh/Tools/Decimater/ModBaseT.hh File Reference

Base class for all decimation modules. More...

#include <OpenMesh/Core/Utils/Noncopyable.hh>
#include <OpenMesh/Tools/Decimater/CollapseInfoT.hh>
#include <string>
Include dependency graph for ModBaseT.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  OpenMesh::Decimater::ModHandleT< Module >
 Handle for mesh decimation modules. More...
class  OpenMesh::Decimater::ModBaseT< DecimaterType >
 Base class for all decimation modules. More...

Namespaces

namespace  OpenMesh
 

Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels and mesh traits.


namespace  OpenMesh::Decimater
 

Software related to mesh decimation.


Defines

#define DECIMATER_MODNAME(_mod_name)
 Macro that sets up the name() function.
#define DECIMATING_MODULE(Classname, DecimaterT, Name)
 Convenience macro, to be used in derived modules The macro defines the types.

Detailed Description

Base class for all decimation modules.


Define Documentation

#define DECIMATER_MODNAME (   _mod_name)
Value:
virtual const std::string& name() const { \
  static std::string _s_modname_(#_mod_name); return _s_modname_; \
}

Macro that sets up the name() function.

#define DECIMATING_MODULE (   Classname,
  DecimaterT,
  Name 
)
Value:
typedef Classname < DecimaterT >    Self;               \
  typedef OpenMesh::Decimater::ModHandleT< Self >     Handle; \
  typedef OpenMesh::Decimater::ModBaseT< DecimaterT > Base;   \
  typedef typename Base::Mesh         Mesh;             \
  typedef typename Base::CollapseInfo CollapseInfo;     \
  DECIMATER_MODNAME( Name )

Convenience macro, to be used in derived modules The macro defines the types.

  • Handle, type of the module's handle.
  • Base, type of ModBaseT<>.
  • Mesh, type of the associated mesh passed by the decimater type.
  • CollapseInfo, to your convenience and uses DECIMATER_MODNAME() to define the name of the module.
Parameters:
ClassnameThe name of the derived class.
DecimaterTPass here the decimater type, which is the template parameter passed to ModBaseT.
NameGive the module a name.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines