k3d::data::iconstraint< value_t > Class Template Reference

Abstract interface for a chain-of-responsibility constraint node. More...

#include <data.h>

Inheritance diagram for k3d::data::iconstraint< value_t >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~iconstraint ()
void constrain (value_t &Value)

Protected Member Functions

 iconstraint (iconstraint< value_t > *NextConstraint)

Private Member Functions

virtual void on_constrain (value_t &Value)=0
 Implement this method in a derived class to modify / constrain the input Value.

Private Attributes

const std::auto_ptr
< iconstraint< value_t > > 
m_next_constraint
 Storage for the (optional) next constraint to apply in the chain.

Detailed Description

template<typename value_t>
class k3d::data::iconstraint< value_t >

Abstract interface for a chain-of-responsibility constraint node.


Constructor & Destructor Documentation

template<typename value_t>
virtual k3d::data::iconstraint< value_t >::~iconstraint (  )  [inline, virtual]
template<typename value_t>
k3d::data::iconstraint< value_t >::iconstraint ( iconstraint< value_t > *  NextConstraint  )  [inline, explicit, protected]

Member Function Documentation

template<typename value_t>
void k3d::data::iconstraint< value_t >::constrain ( value_t &  Value  )  [inline]
template<typename value_t>
virtual void k3d::data::iconstraint< value_t >::on_constrain ( value_t &  Value  )  [private, pure virtual]

Implement this method in a derived class to modify / constrain the input Value.

Implemented in k3d::data::constraint::minimum_t< value_t >, and k3d::data::constraint::maximum_t< value_t >.

Referenced by k3d::data::iconstraint< data_t >::constrain().


Member Data Documentation

template<typename value_t>
const std::auto_ptr<iconstraint<value_t> > k3d::data::iconstraint< value_t >::m_next_constraint [private]

Storage for the (optional) next constraint to apply in the chain.

Referenced by k3d::data::iconstraint< data_t >::constrain().


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

Generated on Mon Mar 21 07:42:19 2011 for K-3D by doxygen 1.6.3