ost::LinkedDouble Class Reference

Self managed double linked list object chain.Accumulating double linked list. More...

#include <object.h>

List of all members.

Public Member Functions

virtual LinkedDouble * getFirst (void)
 Get first linked object in list.
virtual LinkedDouble * getLast (void)
 Gets the last object in the list.
virtual LinkedDouble * getInsert (void)
 Virtual to get the insert point to use when adding new members.
LinkedDouble * getNext (void)
 Get next object, for convenience.
LinkedDouble * getPrev (void)
 Get prev object in the list.
void insert (LinkedDouble &obj)
 Insert object into chain.
void detach (void)
 Remove object from chain.
LinkedDouble & operator+= (LinkedDouble &obj)
LinkedDouble & operator-- ()

Protected Member Functions

 LinkedDouble ()
virtual ~LinkedDouble ()
virtual void enterLock (void)
virtual void leaveLock (void)

Protected Attributes

LinkedDouble * nextObject
LinkedDouble * prevObject


Detailed Description

Self managed double linked list object chain.Accumulating double linked list.

This is used for accumulating lists by using as a base class for a derived subclass.

Author:
David Sugar <dyfet@gnutelephony.org>


Constructor & Destructor Documentation

ost::LinkedDouble::LinkedDouble (  )  [inline, protected]

virtual ost::LinkedDouble::~LinkedDouble (  )  [protected, virtual]


Member Function Documentation

virtual void ost::LinkedDouble::enterLock ( void   )  [protected, virtual]

virtual void ost::LinkedDouble::leaveLock ( void   )  [protected, virtual]

virtual LinkedDouble* ost::LinkedDouble::getFirst ( void   )  [virtual]

Get first linked object in list.

This may be dynamically recast, and may refer to a master static bookmark pointer in a derived class. Otherwise it follows list to front.

Returns:
pointer to first object in list.

virtual LinkedDouble* ost::LinkedDouble::getLast ( void   )  [virtual]

Gets the last object in the list.

This normally follows the links to the end. This is a virtual because derived class may include a static member bookmark for the current end.

Returns:
pointer to last object in list.

virtual LinkedDouble* ost::LinkedDouble::getInsert ( void   )  [virtual]

Virtual to get the insert point to use when adding new members.

This may be current, or always head or always tail. As a virtual, this allows derived class to establish "policy".

Returns:
pointer to insertion point in list.

LinkedDouble* ost::LinkedDouble::getNext ( void   )  [inline]

Get next object, for convenience.

Derived class may use this with a dynamic cast.

Returns:
next object in list.

LinkedDouble* ost::LinkedDouble::getPrev ( void   )  [inline]

Get prev object in the list.

Returns:
pointer to previous object.

void ost::LinkedDouble::insert ( LinkedDouble &  obj  ) 

Insert object into chain.

Parameters:
object being inserted.

void ost::LinkedDouble::detach ( void   ) 

Remove object from chain.

LinkedDouble& ost::LinkedDouble::operator+= ( LinkedDouble &  obj  ) 

LinkedDouble& ost::LinkedDouble::operator-- (  ) 


Member Data Documentation

LinkedDouble* ost::LinkedDouble::nextObject [protected]

LinkedDouble * ost::LinkedDouble::prevObject [protected]


The documentation for this class was generated from the following file:
Generated on Tue Jan 9 16:37:08 2007 for GNU CommonC++ by  doxygen 1.5.1