/media/disk/disc/these/mine/meshseqsegenv/MSSEnv/external_lib/OpenMesh/Tools/Decimater/ModBaseT.hh File Reference

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

Namespaces

namespace  OpenMesh
namespace  OpenMesh::Decimater

Data Structures

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

Defines

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


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:
Classname The name of the derived class.
DecimaterT Pass here the decimater type, which is the template parameter passed to ModBaseT.
Name Give the module a name.


Generated on Fri Jan 16 12:59:23 2009 by  doxygen 1.5.5