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

Tagcoll::PatchList< ITEM, TAG > Class Template Reference

List of patches that can be applied to a TaggedCollection. More...

#include <Patches.h>

Inheritance diagram for Tagcoll::PatchList< ITEM, TAG >:

Inheritance graph
[legend]
Collaboration diagram for Tagcoll::PatchList< ITEM, TAG >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::map< ITEM, Patch<
ITEM, TAG > >::const_iterator 
const_iterator
typedef std::map< ITEM, Patch<
ITEM, TAG > >::iterator 
iterator

Public Member Functions

 PatchList ()
 PatchList (Consumer< ITEM, TAG > &consumer)
 PatchList (const PatchList &pl)
 PatchList (const PatchList &pl, Consumer< ITEM, TAG > &consumer)
virtual ~PatchList () throw ()
void addPatch (const Collection< ITEM, TAG > &im1, const Collection< ITEM, TAG > &im2) throw ()
 Add to this patchlist the patches needed to transform `im1' in `im2'.
void addPatch (const Patch< ITEM, TAG > &patch) throw ()
 Add `patch' to this PatchList.
void addPatch (const PatchList< ITEM, TAG > &patches) throw ()
 Add `patches' to this PatchList.
OpSet< TAG > patch (const ITEM &item, const OpSet< TAG > &tagset) const throw ()
 Patch a tagged item.
PatchList< ITEM, TAG > getReverse () const throw ()

Protected Member Functions

virtual void consumeItemUntagged (const ITEM &item)
 Process an untagged item.
virtual void consumeItem (const ITEM &item, const OpSet< TAG > &tags)
 Process a tagged item, with its tags.

Detailed Description

template<class ITEM, class TAG>
class Tagcoll::PatchList< ITEM, TAG >

List of patches that can be applied to a TaggedCollection.


Member Typedef Documentation

template<class ITEM, class TAG>
typedef std::map<ITEM, Patch<ITEM, TAG> >::const_iterator Tagcoll::PatchList< ITEM, TAG >::const_iterator
 

template<class ITEM, class TAG>
typedef std::map<ITEM, Patch<ITEM, TAG> >::iterator Tagcoll::PatchList< ITEM, TAG >::iterator
 


Constructor & Destructor Documentation

template<class ITEM, class TAG>
Tagcoll::PatchList< ITEM, TAG >::PatchList  )  [inline]
 

template<class ITEM, class TAG>
Tagcoll::PatchList< ITEM, TAG >::PatchList Consumer< ITEM, TAG > &  consumer  )  [inline]
 

template<class ITEM, class TAG>
Tagcoll::PatchList< ITEM, TAG >::PatchList const PatchList< ITEM, TAG > &  pl  )  [inline]
 

template<class ITEM, class TAG>
Tagcoll::PatchList< ITEM, TAG >::PatchList const PatchList< ITEM, TAG > &  pl,
Consumer< ITEM, TAG > &  consumer
[inline]
 

template<class ITEM, class TAG>
virtual Tagcoll::PatchList< ITEM, TAG >::~PatchList  )  throw () [inline, virtual]
 


Member Function Documentation

template<class ITEM, class TAG>
void Tagcoll::PatchList< ITEM, TAG >::addPatch const PatchList< ITEM, TAG > &  patches  )  throw ()
 

Add `patches' to this PatchList.

template<class ITEM, class TAG>
void Tagcoll::PatchList< ITEM, TAG >::addPatch const Patch< ITEM, TAG > &  patch  )  throw ()
 

Add `patch' to this PatchList.

template<class ITEM, class TAG>
void Tagcoll::PatchList< ITEM, TAG >::addPatch const Collection< ITEM, TAG > &  im1,
const Collection< ITEM, TAG > &  im2
throw ()
 

Add to this patchlist the patches needed to transform `im1' in `im2'.

template<class ITEM, class TAG>
void Tagcoll::PatchList< ITEM, TAG >::consumeItem const ITEM &  item,
const OpSet< TAG > &  tags
[protected, virtual]
 

Process a tagged item, with its tags.

Reimplemented from Tagcoll::Filter< ITEM, TAG >.

template<class ITEM, class TAG>
void Tagcoll::PatchList< ITEM, TAG >::consumeItemUntagged const ITEM &  item  )  [protected, virtual]
 

Process an untagged item.

Reimplemented from Tagcoll::Filter< ITEM, TAG >.

template<class ITEM, class TAG>
PatchList< ITEM, TAG > Tagcoll::PatchList< ITEM, TAG >::getReverse  )  const throw ()
 

template<class ITEM, class TAG>
OpSet< TAG > Tagcoll::PatchList< ITEM, TAG >::patch const ITEM &  item,
const OpSet< TAG > &  tagset
const throw ()
 

Patch a tagged item.

Returns:
The new (patched) set of tags


The documentation for this class was generated from the following files:
Generated on Sat Sep 10 02:58:24 2005 for libtagcoll by  doxygen 1.4.4