Developer Documentation

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Friends | List of all members
OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M > Class Template Referenceabstract

`#include <libs_required/OpenMesh/src/OpenMesh/Tools/Subdivider/Adaptive/Composite/RuleInterfaceT.hh>`

Inheritance diagram for OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >:

## Public Types
typedef M | Mesh
typedef RuleInterfaceT< M > | Self
typedef RuleHandleT< Self > | Rule
typedef M::Scalar | scalar_t

## Public Member Functions
virtual | ~RuleInterfaceT ()
| Destructor.
virtual const char * | type () const =0
void | update (typename M::FaceHandle &_fh, state_t _target_state)
void | update (typename M::EdgeHandle &_eh, state_t _target_state)
void | update (typename M::VertexHandle &_vh, state_t _target_state)
int | subdiv_type () const
| Type of split operation, if it is a topological operator.
int | number () const
| Position in rule sequence.
Raise item
virtual void | raise (typename M::FaceHandle &_fh, state_t _target_state)
| Raise item to target state `_target_state`.
virtual void | raise (typename M::EdgeHandle &_eh, state_t _target_state)
| Raise item to target state `_target_state`.
virtual void | raise (typename M::VertexHandle &_vh, state_t _target_state)
| Raise item to target state `_target_state`.
Parameterization of rule
virtual void | set_coeff (scalar_t _coeff)
| Set coefficient - ignored by non-parameterized rules.
scalar_t | coeff () const
| Get coefficient - ignored by non-parameterized rules.

## Protected Member Functions
| RuleInterfaceT (Mesh &_mesh)
| Default constructor.
void | set_prev_rule (Self *&_p)
Self * | prev_rule ()
void | set_subdiv_rule (Self *&_n)
Self * | subdiv_rule ()
void | set_number (int _n)
void | set_n_rules (int _n)
int | n_rules ()
void | set_subdiv_type (int _n)

## Protected Attributes
Mesh & | mesh_

## Private Member Functions
| RuleInterfaceT (const RuleInterfaceT &)
RuleInterfaceT & | operator= (const RuleInterfaceT &)

## Private Attributes
Self * | prev_rule_
Self * | subdiv_rule_
int | subdiv_type_
int | number_
int | n_rules_
scalar_t | coeff_

## Friends
class | CompositeT< M >

## Detailed Description

### template<typename M>
class OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >

Base class for adaptive composite subdivision rules

See also
  class CompositeT

Definition at line 84 of file CompositeT.hh.

## Member Function Documentation

template<typename M >

virtual const char* OpenMesh::Subdivider::Adaptive::RuleInterfaceT< M >::type | ( |  | ) | const
| pure virtual

Returns the name of the rule. Use define COMPOSITE_RULE to overload this function in a derived class.

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

- libs_required/OpenMesh/src/OpenMesh/Tools/Subdivider/Adaptive/Composite/CompositeT.hh
- libs_required/OpenMesh/src/OpenMesh/Tools/Subdivider/Adaptive/Composite/RuleInterfaceT.hh