ucommon::LinkedList Class Reference
A double linked list object.
More...
#include <linked.h>
Detailed Description
A double linked list object.
This is used as a base class for objects that will be organized through ordered double linked lists which allow convenient insertion and deletion of list members anywhere in the list.
- Author:
- David Sugar <dyfet@gnutelephony.org>
Definition at line 769 of file linked.h.
Constructor & Destructor Documentation
ucommon::LinkedList::LinkedList |
( |
OrderedIndex * |
index |
) |
[protected] |
Construct and add our object to an existing double linked list at end.
- Parameters:
-
| index | of linked list we are listed in. |
virtual ucommon::LinkedList::~LinkedList |
( |
|
) |
[protected, virtual] |
Delete linked list object.
If it is a member of a list of objects, then the list is reformed around us.
Member Function Documentation
void ucommon::LinkedList::enlist |
( |
OrderedIndex * |
index |
) |
[virtual] |
Attach our object to a linked list.
The default strategy is to add to tail.
- Parameters:
-
| index | of linked list we are joining. |
Reimplemented from ucommon::OrderedObject.
void ucommon::LinkedList::enlistHead |
( |
OrderedIndex * |
index |
) |
|
Attach our object to the start of a linked list though an ordered index.
If we are already attached to a list we are delisted first.
- Parameters:
-
| index | of linked list we are joining. |
Reimplemented from ucommon::OrderedObject.
void ucommon::LinkedList::enlistTail |
( |
OrderedIndex * |
index |
) |
|
Attach our object to the end of a linked list though an ordered index.
If we are already attached to a list we are delisted first.
- Parameters:
-
| index | of linked list we are joining. |
Reimplemented from ucommon::OrderedObject.
LinkedList* ucommon::LinkedList::getNext |
( |
void |
|
) |
const [inline] |
LinkedList* ucommon::LinkedList::getPrev |
( |
void |
|
) |
const [inline] |
Get previous node in the list for reverse iteration.
- Returns:
- previous node in list.
Definition at line 839 of file linked.h.
virtual void ucommon::LinkedList::insert |
( |
LinkedList * |
object |
) |
[virtual] |
Insert object, method in derived object.
- Parameters:
-
void ucommon::LinkedList::insertHead |
( |
LinkedList * |
object |
) |
|
Insert object in front of our object.
- Parameters:
-
void ucommon::LinkedList::insertTail |
( |
LinkedList * |
object |
) |
|
Insert object behind our object.
- Parameters:
-
bool ucommon::LinkedList::is_head |
( |
void |
|
) |
const [inline] |
Test if we are at the head of a list.
- Returns:
- true if we are the first node in a list.
Definition at line 825 of file linked.h.
bool ucommon::LinkedList::is_tail |
( |
void |
|
) |
const [inline] |
Test if we are at the end of a list.
- Returns:
- true if we are the last node in a list.
Definition at line 832 of file linked.h.
void ucommon::LinkedList::operator*= |
( |
LinkedList * |
object |
) |
[inline] |
Insert object in list with our object.
- Parameters:
-
Definition at line 885 of file linked.h.
void ucommon::LinkedList::operator+= |
( |
LinkedList * |
object |
) |
[inline] |
Insert object behind our object.
- Parameters:
-
Definition at line 871 of file linked.h.
void ucommon::LinkedList::operator-= |
( |
LinkedList * |
object |
) |
[inline] |
Insert object in front of our object.
- Parameters:
-
Definition at line 878 of file linked.h.
The documentation for this class was generated from the following file: