UCommon
|
Linked objects, lists, templates, and containers. More...
Go to the source code of this file.
Data Structures | |
class | ucommon::DLinkedObject |
A double-linked Object, used for certain kinds of lists. More... | |
class | ucommon::keylist< T > |
A template for ordered index of typed name key mapped objects. More... | |
class | ucommon::keymap< T, M > |
A template class for a hash map. More... | |
class | ucommon::linked_pointer< T > |
A smart pointer template for iterating linked lists. More... | |
class | ucommon::linked_value< T, O > |
Template value class to embed data structure into a linked list. More... | |
class | ucommon::LinkedList |
A double linked list object. More... | |
class | ucommon::LinkedObject |
Common base class for all objects that can be formed into a linked list. More... | |
class | ucommon::multimap< T, P > |
Embed data objects into a multipap structured memory database. More... | |
class | ucommon::MultiMap |
A multipath linked list where membership is managed in multiple lists. More... | |
class | ucommon::named_value< T, O > |
Template value class to embed data structure into a named list. More... | |
class | ucommon::NamedObject |
A linked object base class with members found by name. More... | |
class | ucommon::NamedTree |
The named tree class is used to form a tree oriented list of associated objects. More... | |
class | ucommon::ObjectQueue |
A queue of double linked object. More... | |
class | ucommon::objfifo< T > |
Template for typesafe basic object fifo container. More... | |
class | ucommon::objqueue< T > |
Template for typesafe basic object queue container. More... | |
class | ucommon::objstack< T > |
Template for typesafe basic object stack container. More... | |
class | ucommon::OrderedIndex |
An index container for maintaining an ordered list of objects. More... | |
class | ucommon::OrderedObject |
A linked object base class for ordered objects. More... | |
class | ucommon::ReusableObject |
Reusable objects for forming private heaps. More... | |
class | ucommon::treemap< T > |
Embed data objects into a tree structured memory database. More... | |
Namespaces | |
namespace | ucommon |
Common namespace for all ucommon objects. | |
Typedefs | |
typedef LinkedObject * | ucommon::LinkedIndex |
Convenience typedef for root pointers of single linked lists. | |
typedef OrderedIndex | ucommon::objfifo_t |
Convenience type for a fifo of linked objects. | |
typedef ObjectQueue | ucommon::objqueue_t |
Convenience type for a queue of linked objects. | |
typedef ObjectStack | ucommon::objstack_t |
Convenience type for a stack of linked objects. | |
Functions | |
void | ucommon::add (ObjectStack &stack, LinkedObject *object) |
Add a linked object onto a stack of linked objects. | |
void | ucommon::add (OrderedIndex &fifo, LinkedObject *object) |
Add a linked object onto a fifo of linked objects. | |
void | ucommon::add (ObjectQueue &queue, DLinkedObject *object) |
Add a linked object to end of queue of objects. | |
LinkedObject * | ucommon::pop (ObjectStack &stack) |
Pop a linked object from a stack of linked objects. | |
LinkedObject * | ucommon::pop (OrderedIndex &fifo) |
Pop a linked object from a fifo of linked objects. | |
DLinkedObject * | ucommon::pop (ObjectQueue &queue) |
Pop a linked object from end of queue. | |
LinkedObject * | ucommon::pull (ObjectStack &stack) |
Pop a linked object from a stack of linked objects. | |
LinkedObject * | ucommon::pull (OrderedIndex &fifo) |
Pop a linked object from a fifo of linked objects. | |
DLinkedObject * | ucommon::pull (ObjectQueue &queue) |
Pull a linked object from start of a queue. | |
void | ucommon::push (ObjectStack &stack, LinkedObject *object) |
Push a linked object onto a stack of linked objects. | |
void | ucommon::push (OrderedIndex &fifo, LinkedObject *object) |
Push a linked object onto a fifo of linked objects. | |
void | ucommon::push (ObjectQueue &queue, DLinkedObject *object) |
Push a linked object to start of queue. |
Linked objects, lists, templates, and containers.
Common support for objects that might be organized as single and double linked lists, rings and queues, and tree oriented data structures. These generic classes may be used to help form anything from callback registration systems and indexed memory hashes to xml parsed tree nodes.
Definition in file linked.h.