Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

ost::LinkedDouble Class Reference

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

#include <object.h>

List of all members.

Public Methods

virtual LinkedDouble* getFirst (void)
 Get first linked object in list. More...

virtual LinkedDouble* getLast (void)
 Gets the last object in the list. More...

virtual LinkedDouble* getInsert (void)
 Virtual to get the insert point to use when adding new members. More...

LinkedDouble* getNext (void)
 Get next object, for convenience. More...

LinkedDouble* getPrev (void)
 Get prev object in the list. More...

void insert (LinkedDouble &obj)
 Insert object into chain. More...

void detach (void)
 Remove object from chain. More...

LinkedDouble& operator+= (LinkedDouble &obj)
LinkedDouble& operator-- ()

Protected Methods

 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]
 

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


Member Function Documentation

void ost::LinkedDouble::detach ( void )
 

Remove object from chain.

void ost::LinkedDouble::enterLock ( void ) [protected, 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.

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::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.

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::leaveLock ( void ) [protected, virtual]
 

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

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


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 at Sat May 12 18:59:42 2007 for GNU CommonC++ by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001