|
UCommon
|
Self managed double linked list object chain. More...
#include <object.h>

Public Types | |
| enum | InsertMode { modeAtFirst, modeAtLast, modeBefore, modeAfter } |
| Requested in overloaded insert() method to indicate how to insert data into list. More... | |
Public Member Functions | |
| virtual void | detach (void) |
| Remove object from chain. | |
| virtual LinkedDouble * | getFirst (void) |
| Get first linked object in list. | |
| virtual LinkedDouble * | getInsert (void) |
| Virtual to get the insert point to use when adding new members. | |
| virtual LinkedDouble * | getLast (void) |
| Gets the last object in the list. | |
| LinkedDouble * | getNext (void) |
| Get next object, for convenience. | |
| LinkedDouble * | getPrev (void) |
| Get prev object in the list. | |
| virtual void | insert (LinkedDouble &obj, InsertMode position=modeAtLast) |
| Insert object into chain at given position, as indicated by InsertMode; If no position is given, it defaults to modeAtLast, inserting element at list's end. | |
| LinkedDouble & | operator+= (LinkedDouble &obj) |
| LinkedDouble & | operator-- () |
Protected Member Functions | |
| virtual void | enterLock (void) |
| virtual LinkedDouble * | firstObject () |
| virtual LinkedDouble * | lastObject () |
| virtual void | leaveLock (void) |
Protected Attributes | |
| LinkedDouble * | nextObject |
| LinkedDouble * | prevObject |
Self managed double linked list object chain.
This is used for accumulating lists by using as a base class for a derived subclass.
Requested in overloaded insert() method to indicate how to insert data into list.
| 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.
| 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".
| 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.
| LinkedDouble* ost::LinkedDouble::getNext | ( | void | ) | [inline] |
| LinkedDouble* ost::LinkedDouble::getPrev | ( | void | ) | [inline] |
| virtual void ost::LinkedDouble::insert | ( | LinkedDouble & | obj, |
| InsertMode | position = modeAtLast |
||
| ) | [virtual] |
Insert object into chain at given position, as indicated by InsertMode; If no position is given, it defaults to modeAtLast, inserting element at list's end.
| object | being inserted. |
| position | where object is inserted. |
1.7.6.1