Developer Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ModBaseT.hh File Reference
#include <OpenMesh/Core/Utils/Noncopyable.hh>
#include <OpenMesh/Tools/Decimater/CollapseInfoT.hh>
#include <string>

Go to the source code of this file.

Classes

class  OpenMesh::Decimater::ModHandleT< Module >
class  OpenMesh::Decimater::ModBaseT< DecimaterType >

Namespaces

namespace  OpenMesh
namespace  OpenMesh::Decimater

Macros

#define DECIMATER_MODNAME(_mod_name)
#define DECIMATING_MODULE(Classname, DecimaterT, Name)

Detailed Description

Base class for all decimation modules.

Definition in file ModBaseT.hh.

Macro Definition 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

Definition at line 127 of file ModBaseT.hh.

#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.

Definition at line 146 of file ModBaseT.hh.