ost::LinkedDouble(3) | Library Functions Manual | ost::LinkedDouble(3) |
NAME¶
ost::LinkedDouble - Self managed double linked list object chain.
SYNOPSIS¶
#include <object.h>
Public Types¶
enum InsertMode { modeAtFirst, modeAtLast,
modeBefore, modeAfter }
Requested in overloaded insert() method to indicate how to insert data
into list.
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)
virtual LinkedDouble * firstObject ()
virtual LinkedDouble * lastObject ()
Protected Attributes¶
LinkedDouble * nextObject
LinkedDouble * prevObject
Detailed Description¶
Self managed double linked list object chain.
This is used for accumulating lists by using as a base class for a derived subclass.
Author
Accumulating double linked list.
Member Enumeration Documentation¶
enum ost::LinkedDouble::InsertMode¶
Requested in overloaded insert() method to indicate how to insert data into list.
Enumerator
- modeAtFirst
- insert at first position in list pointed by current object
- modeAtLast
- insert at last position in list pointed by current object
- modeBefore
- insert in list before current object
- modeAfter
- insert in list after current object
Constructor & Destructor Documentation¶
ost::LinkedDouble::LinkedDouble () [inline], [protected]¶
virtual ost::LinkedDouble::~LinkedDouble () [protected], [virtual]¶
Member Function Documentation¶
virtual void ost::LinkedDouble::detach (void) [virtual]¶
Remove object from chain.
virtual void ost::LinkedDouble::enterLock (void) [protected], [virtual]¶
virtual LinkedDouble* ost::LinkedDouble::firstObject () [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
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
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
LinkedDouble* ost::LinkedDouble::getNext (void) [inline]¶
Get next object, for convenience. Derived class may use this with a dynamic cast.
Returns
LinkedDouble* ost::LinkedDouble::getPrev (void) [inline]¶
Get prev object in the list.
Returns
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.
Parameters
position where object is inserted.
virtual LinkedDouble* ost::LinkedDouble::lastObject () [protected], [virtual]¶
virtual void ost::LinkedDouble::leaveLock (void) [protected], [virtual]¶
LinkedDouble& ost::LinkedDouble::operator+= (LinkedDouble & obj)¶
LinkedDouble& ost::LinkedDouble::operator-- ()¶
Member Data Documentation¶
LinkedDouble* ost::LinkedDouble::nextObject [protected]¶
LinkedDouble * ost::LinkedDouble::prevObject [protected]¶
Author¶
Generated automatically by Doxygen for GNU CommonC++ from the source code.
Sun Dec 27 2020 | GNU CommonC++ |