#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 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. | |
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. | |
virtual 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 |
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.
ost::LinkedDouble::LinkedDouble | ( | ) | [inline, protected] |
virtual ost::LinkedDouble::~LinkedDouble | ( | ) | [protected, virtual] |
virtual void ost::LinkedDouble::detach | ( | void | ) | [virtual] |
Remove object from chain.
virtual void ost::LinkedDouble::enterLock | ( | 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.
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] |
Get next object, for convenience.
Derived class may use this with a dynamic cast.
LinkedDouble* ost::LinkedDouble::getPrev | ( | void | ) | [inline] |
Get prev object in the list.
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. |
virtual void ost::LinkedDouble::leaveLock | ( | void | ) | [protected, virtual] |
LinkedDouble& ost::LinkedDouble::operator+= | ( | LinkedDouble & | obj | ) |
LinkedDouble& ost::LinkedDouble::operator-- | ( | ) |
LinkedDouble* ost::LinkedDouble::nextObject [protected] |
LinkedDouble * ost::LinkedDouble::prevObject [protected] |