Templates -- Meow  1.1.2
不能,也不應該先編譯成obj-file的templates
meow::Pipeline< Input, Output, Medium > Class Template Referenceabstract

pipeline More...

#include "Pipeline.h"

Public Member Functions

virtual ~Pipeline ()
 destructor More...
 
virtual Output goThrough (Input const &in) const =0
 go More...
 
virtual bool inversable ()
 return whether this pipeline can reverse More...
 
virtual Input goThroughInv (Output const &in) const
 reverse go More...
 
virtual bool frontAdd (Medium const *ptr, bool auto_delete)
 add a medium to the front of this pipeline More...
 
virtual bool backAdd (Medium const *ptr, bool auto_delete)
 add a medium to the back of this pipeline More...
 
virtual bool frontDel ()
 remove a medium from the front of this pipeline More...
 
virtual bool backDel ()
 add a medium from the back of this pipeline More...
 
virtual size_t size () const
 return how many medium in this pipeline More...
 
virtual bool empty () const
 same as (size() == 0) More...
 
virtual Medium const * first () const
 get the const-pointer of the first medium More...
 
virtual Medium const * last () const
 get the const-pointer of the last medium More...
 

Protected Types

typedef std::list< Medium
const * >::const_iterator 
MediumPointerIteratorK
 

Protected Member Functions

 Pipeline ()
 constructor with empty contain More...
 
 Pipeline (Pipeline const &p)
 copy constructor More...
 
PipelinecopyFrom (Pipeline const &p)
 copy contain from gived pipeline More...
 
PipelinereferenceFrom (Pipeline const &p)
 reference from gived pipeline More...
 
Pipelineoperator= (Pipeline const &p)
 same as copyFrom(p) More...
 
std::list< Medium const * > const & pipe () const
 return const-reference of the pipe list More...
 

Detailed Description

template<class Input, class Output, class Medium>
class meow::Pipeline< Input, Output, Medium >

pipeline

Member Typedef Documentation

template<class Input, class Output, class Medium>
typedef std::list<Medium const*>::const_iterator meow::Pipeline< Input, Output, Medium >::MediumPointerIteratorK
protected

Constructor & Destructor Documentation

template<class Input, class Output, class Medium>
meow::Pipeline< Input, Output, Medium >::Pipeline ( )
inlineprotected

constructor with empty contain

template<class Input, class Output, class Medium>
meow::Pipeline< Input, Output, Medium >::Pipeline ( Pipeline< Input, Output, Medium > const &  p)
inlineprotected

copy constructor

template<class Input, class Output, class Medium>
virtual meow::Pipeline< Input, Output, Medium >::~Pipeline ( )
inlinevirtual

destructor

Member Function Documentation

template<class Input, class Output, class Medium>
virtual bool meow::Pipeline< Input, Output, Medium >::backAdd ( Medium const *  ptr,
bool  auto_delete 
)
inlinevirtual

add a medium to the back of this pipeline

Parameters
[in]ptrpointer to the medium
[in]auto_deleteshould I delete this pointer when destructor

Reimplemented in meow::TransformatePipeline< Scalar >.

template<class Input, class Output, class Medium>
virtual bool meow::Pipeline< Input, Output, Medium >::backDel ( )
inlinevirtual

add a medium from the back of this pipeline

Returns
successful or not
template<class Input, class Output, class Medium>
Pipeline& meow::Pipeline< Input, Output, Medium >::copyFrom ( Pipeline< Input, Output, Medium > const &  p)
inlineprotected

copy contain from gived pipeline

Parameters
[in]pgived pipeline
Returns
*this
template<class Input, class Output, class Medium>
virtual bool meow::Pipeline< Input, Output, Medium >::empty ( ) const
inlinevirtual

same as (size() == 0)

template<class Input, class Output, class Medium>
virtual Medium const* meow::Pipeline< Input, Output, Medium >::first ( ) const
inlinevirtual

get the const-pointer of the first medium

template<class Input, class Output, class Medium>
virtual bool meow::Pipeline< Input, Output, Medium >::frontAdd ( Medium const *  ptr,
bool  auto_delete 
)
inlinevirtual

add a medium to the front of this pipeline

Parameters
[in]ptrpointer to the medium
[in]auto_deleteshould I delete this pointer when destructor
Returns
successful or not

Reimplemented in meow::TransformatePipeline< Scalar >.

template<class Input, class Output, class Medium>
virtual bool meow::Pipeline< Input, Output, Medium >::frontDel ( )
inlinevirtual

remove a medium from the front of this pipeline

Returns
successful or not
template<class Input, class Output, class Medium>
virtual Output meow::Pipeline< Input, Output, Medium >::goThrough ( Input const &  in) const
pure virtual

go

Parameters
[in]ininput data
Returns
output data

Implemented in meow::TransformatePipeline< Scalar >.

template<class Input, class Output, class Medium>
virtual Input meow::Pipeline< Input, Output, Medium >::goThroughInv ( Output const &  in) const
inlinevirtual

reverse go

Parameters
[in]ininput data
Returns
output data
template<class Input, class Output, class Medium>
virtual bool meow::Pipeline< Input, Output, Medium >::inversable ( )
inlinevirtual

return whether this pipeline can reverse

Default is unable

template<class Input, class Output, class Medium>
virtual Medium const* meow::Pipeline< Input, Output, Medium >::last ( ) const
inlinevirtual

get the const-pointer of the last medium

template<class Input, class Output, class Medium>
Pipeline& meow::Pipeline< Input, Output, Medium >::operator= ( Pipeline< Input, Output, Medium > const &  p)
inlineprotected

same as copyFrom(p)

template<class Input, class Output, class Medium>
std::list<Medium const*> const& meow::Pipeline< Input, Output, Medium >::pipe ( ) const
inlineprotected

return const-reference of the pipe list

template<class Input, class Output, class Medium>
Pipeline& meow::Pipeline< Input, Output, Medium >::referenceFrom ( Pipeline< Input, Output, Medium > const &  p)
inlineprotected

reference from gived pipeline

Parameters
[in]pgived pipeline
Returns
*this
template<class Input, class Output, class Medium>
virtual size_t meow::Pipeline< Input, Output, Medium >::size ( ) const
inlinevirtual

return how many medium in this pipeline


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