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

#include <SmartHierarchy.h>

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

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

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::vector< HierarchyNode<
ITEM, TAG > * >::iterator 
iterator

Public Member Functions

 HierarchyNode (const TAG &tag, const CardinalityStore< ITEM, TAG > &coll)
 HierarchyNode (HierarchyNode< ITEM, TAG > *parent, const TAG &tag, const CardinalityStore< ITEM, TAG > &coll)
virtual ~HierarchyNode ()
const TAG & tag () const
TAG tag ()
HierarchyNode< ITEM, TAG > * parent () const
virtual void expand ()=0
int size ()
iterator begin ()
iterator end ()
HierarchyNode< ITEM, TAG > * operator[] (int idx)
const OpSet< ITEM > & getItems ()

Protected Attributes

TAG _tag
CardinalityStore< ITEM, TAG > * coll
std::vector< HierarchyNode<
ITEM, TAG > * > 
children
OpSet< ITEM > items
HierarchyNode< ITEM, TAG > * _parent

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


Member Typedef Documentation

template<class ITEM, class TAG>
typedef std::vector<HierarchyNode<ITEM, TAG>*>::iterator Tagcoll::HierarchyNode< ITEM, TAG >::iterator
 


Constructor & Destructor Documentation

template<class ITEM, class TAG>
Tagcoll::HierarchyNode< ITEM, TAG >::HierarchyNode const TAG &  tag,
const CardinalityStore< ITEM, TAG > &  coll
[inline]
 

template<class ITEM, class TAG>
Tagcoll::HierarchyNode< ITEM, TAG >::HierarchyNode HierarchyNode< ITEM, TAG > *  parent,
const TAG &  tag,
const CardinalityStore< ITEM, TAG > &  coll
[inline]
 

template<class ITEM, class TAG>
HierarchyNode::~HierarchyNode  )  [virtual]
 


Member Function Documentation

template<class ITEM, class TAG>
iterator Tagcoll::HierarchyNode< ITEM, TAG >::begin  )  [inline]
 

template<class ITEM, class TAG>
iterator Tagcoll::HierarchyNode< ITEM, TAG >::end  )  [inline]
 

template<class ITEM, class TAG>
virtual void Tagcoll::HierarchyNode< ITEM, TAG >::expand  )  [pure virtual]
 

Implemented in Tagcoll::SmartHierarchyNode< ITEM, TAG >, and Tagcoll::CleanSmartHierarchyNode< ITEM, TAG >.

template<class ITEM, class TAG>
const OpSet<ITEM>& Tagcoll::HierarchyNode< ITEM, TAG >::getItems  )  [inline]
 

template<class ITEM, class TAG>
HierarchyNode<ITEM, TAG>* Tagcoll::HierarchyNode< ITEM, TAG >::operator[] int  idx  )  [inline]
 

template<class ITEM, class TAG>
HierarchyNode<ITEM, TAG>* Tagcoll::HierarchyNode< ITEM, TAG >::parent  )  const [inline]
 

template<class ITEM, class TAG>
int Tagcoll::HierarchyNode< ITEM, TAG >::size  )  [inline]
 

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

template<class ITEM, class TAG>
const TAG& Tagcoll::HierarchyNode< ITEM, TAG >::tag  )  const [inline]
 


Member Data Documentation

template<class ITEM, class TAG>
HierarchyNode<ITEM, TAG>* Tagcoll::HierarchyNode< ITEM, TAG >::_parent [protected]
 

template<class ITEM, class TAG>
TAG Tagcoll::HierarchyNode< ITEM, TAG >::_tag [protected]
 

template<class ITEM, class TAG>
std::vector<HierarchyNode<ITEM, TAG>*> Tagcoll::HierarchyNode< ITEM, TAG >::children [protected]
 

template<class ITEM, class TAG>
CardinalityStore<ITEM, TAG>* Tagcoll::HierarchyNode< ITEM, TAG >::coll [protected]
 

template<class ITEM, class TAG>
OpSet<ITEM> Tagcoll::HierarchyNode< ITEM, TAG >::items [protected]
 


The documentation for this class was generated from the following files:
Generated on Fri Mar 24 23:16:44 2006 for libtagcoll by  doxygen 1.4.6