Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG > Class Template Reference

Filter converting streams of tagged items among two representations. More...

#include <Serializer.h>

Inheritance diagram for Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >:

Inheritance graph
[legend]
Collaboration diagram for Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ConversionFilter (Converter< IN_ITEM, OUT_ITEM > &citem, Converter< IN_TAG, OUT_TAG > &ctag)
 ConversionFilter (Converter< IN_ITEM, OUT_ITEM > &citem, Converter< IN_TAG, OUT_TAG > &ctag, Consumer< OUT_ITEM, OUT_TAG > &consumer)
virtual ~ConversionFilter () throw ()
Consumer< OUT_ITEM, OUT_TAG > & getConsumer () const
void setConsumer (Consumer< OUT_ITEM, OUT_TAG > &consumer)

Protected Member Functions

virtual void consumeItemUntagged (const IN_ITEM &item)
 Process an untagged item.
virtual void consumeItem (const IN_ITEM &item, const OpSet< IN_TAG > &tags)
 Process a tagged item, with its tags.
virtual void consumeItemsUntagged (const OpSet< IN_ITEM > &items)
 Process a set of items, all with no tags.
virtual void consumeItems (const OpSet< IN_ITEM > &items, const OpSet< IN_TAG > &tags)
 Process a set of items identically tagged, with their tags.

Protected Attributes

Converter< IN_ITEM, OUT_ITEM > citem
Converter< IN_TAG, OUT_TAG > ctag
Consumer< OUT_ITEM, OUT_TAG > * consumer

Detailed Description

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
class Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >

Filter converting streams of tagged items among two representations.


Constructor & Destructor Documentation

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::ConversionFilter Converter< IN_ITEM, OUT_ITEM > &  citem,
Converter< IN_TAG, OUT_TAG > &  ctag
[inline]
 

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::ConversionFilter Converter< IN_ITEM, OUT_ITEM > &  citem,
Converter< IN_TAG, OUT_TAG > &  ctag,
Consumer< OUT_ITEM, OUT_TAG > &  consumer
[inline]
 

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
virtual Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::~ConversionFilter  )  throw () [inline, virtual]
 


Member Function Documentation

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
virtual void Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::consumeItem const IN_ITEM &  item,
const OpSet< IN_TAG > &  tags
[inline, protected, virtual]
 

Process a tagged item, with its tags.

Implements Tagcoll::Consumer< IN_ITEM, IN_TAG >.

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
virtual void Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::consumeItems const OpSet< IN_ITEM > &  items,
const OpSet< IN_TAG > &  tags
[inline, protected, virtual]
 

Process a set of items identically tagged, with their tags.

Reimplemented from Tagcoll::Consumer< IN_ITEM, IN_TAG >.

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
virtual void Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::consumeItemsUntagged const OpSet< IN_ITEM > &  items  )  [inline, protected, virtual]
 

Process a set of items, all with no tags.

Reimplemented from Tagcoll::Consumer< IN_ITEM, IN_TAG >.

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
virtual void Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::consumeItemUntagged const IN_ITEM &  item  )  [inline, protected, virtual]
 

Process an untagged item.

Implements Tagcoll::Consumer< IN_ITEM, IN_TAG >.

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
Consumer<OUT_ITEM, OUT_TAG>& Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::getConsumer  )  const [inline]
 

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
void Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::setConsumer Consumer< OUT_ITEM, OUT_TAG > &  consumer  )  [inline]
 


Member Data Documentation

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
Converter<IN_ITEM, OUT_ITEM> Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::citem [protected]
 

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
Consumer<OUT_ITEM, OUT_TAG>* Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::consumer [protected]
 

template<typename IN_ITEM, typename IN_TAG, typename OUT_ITEM, typename OUT_TAG>
Converter<IN_TAG, OUT_TAG> Tagcoll::ConversionFilter< IN_ITEM, IN_TAG, OUT_ITEM, OUT_TAG >::ctag [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Sep 21 05:24:10 2005 for libtagcoll by  doxygen 1.4.4