yast2-core
Public Member Functions | Private Member Functions
SortedTreeItem< PAYLOAD > Class Template Reference

Template class for tree items that maintain sort order. More...

#include <TreeItem.h>

Inheritance diagram for SortedTreeItem< PAYLOAD >:
TreeItem< PAYLOAD >

List of all members.

Public Member Functions

 SortedTreeItem (PAYLOAD val, SortedTreeItem< PAYLOAD > *parentItem=0)
virtual ~SortedTreeItem ()
void insertChildSorted (SortedTreeItem< PAYLOAD > *newChild)
SortedTreeItem< PAYLOAD > * parent () const
SortedTreeItem< PAYLOAD > * next () const
SortedTreeItem< PAYLOAD > * firstChild () const
- Public Member Functions inherited from TreeItem< PAYLOAD >
 TreeItem (const PAYLOAD &val, TreeItem< PAYLOAD > *parent=0)
virtual ~TreeItem ()
const PAYLOAD & value () const
void setValue (PAYLOAD newValue)
void setParent (TreeItem< PAYLOAD > *newParent)
void setNext (TreeItem< PAYLOAD > *newNext)
void setFirstChild (TreeItem< PAYLOAD > *newFirstChild)
void addChild (TreeItem< PAYLOAD > *newChild)
bool isChildOf (const TreeItem< PAYLOAD > *maybeParent) const

Private Member Functions

 SortedTreeItem (const SortedTreeItem< PAYLOAD > &)
SortedTreeItem< PAYLOAD > & operator= (const SortedTreeItem< PAYLOAD > &)

Additional Inherited Members

- Protected Member Functions inherited from TreeItem< PAYLOAD >
 TreeItem (PAYLOAD val, bool autoAddChild, TreeItem< PAYLOAD > *parent=0)
- Protected Attributes inherited from TreeItem< PAYLOAD >
PAYLOAD _value
TreeItem< PAYLOAD > * _parent
TreeItem< PAYLOAD > * _next
TreeItem< PAYLOAD > * _firstChild

Detailed Description

template<class PAYLOAD>
class SortedTreeItem< PAYLOAD >

Template class for tree items that maintain sort order.

Class 'PAYLOAD' to provide operator<() in addition to what template 'TreeItem' requires.


Constructor & Destructor Documentation

template<class PAYLOAD>
SortedTreeItem< PAYLOAD >::SortedTreeItem ( PAYLOAD  val,
SortedTreeItem< PAYLOAD > *  parentItem = 0 
)
inline

Constructor. Creates a new tree item with value "val" and inserts it in ascending sort order into the children list of "parent".

References SortedTreeItem< PAYLOAD >::insertChildSorted().

template<class PAYLOAD>
virtual SortedTreeItem< PAYLOAD >::~SortedTreeItem ( )
inlinevirtual

Destructor.

template<class PAYLOAD>
SortedTreeItem< PAYLOAD >::SortedTreeItem ( const SortedTreeItem< PAYLOAD > &  )
inlineprivate

Private (i.e. disabled) copy constructor and operator=()

  • neither makes any sense with this class.

Member Function Documentation

template<class PAYLOAD>
SortedTreeItem<PAYLOAD>* SortedTreeItem< PAYLOAD >::firstChild ( ) const
inline

Returns this item's first child or 0 if there is none.

Reimplemented from TreeItem< PAYLOAD >.

References TreeItem< PAYLOAD >::_firstChild.

Referenced by SortedTreeItem< PAYLOAD >::insertChildSorted().

template<class PAYLOAD>
void SortedTreeItem< PAYLOAD >::insertChildSorted ( SortedTreeItem< PAYLOAD > *  newChild)
inline

Insert a child into the internal children list in ascending sort order. Called from the new child's constructor, thus 'public'.

References SortedTreeItem< PAYLOAD >::firstChild(), TreeItem< PAYLOAD >::next(), TreeItem< PAYLOAD >::setFirstChild(), TreeItem< PAYLOAD >::setNext(), and TreeItem< PAYLOAD >::value().

Referenced by SortedTreeItem< PAYLOAD >::SortedTreeItem().

template<class PAYLOAD>
SortedTreeItem<PAYLOAD>* SortedTreeItem< PAYLOAD >::next ( ) const
inline

Returns this item's next sibling or 0 if there is none.

Reimplemented from TreeItem< PAYLOAD >.

References TreeItem< PAYLOAD >::_next.

template<class PAYLOAD>
SortedTreeItem<PAYLOAD>& SortedTreeItem< PAYLOAD >::operator= ( const SortedTreeItem< PAYLOAD > &  )
inlineprivate
template<class PAYLOAD>
SortedTreeItem<PAYLOAD>* SortedTreeItem< PAYLOAD >::parent ( ) const
inline

Returns this item's parent or 0 if there is none.

Reimplemented from TreeItem< PAYLOAD >.

References TreeItem< PAYLOAD >::_parent.


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

Generated on a sunny day for yast2-core by doxygen 1.8.1