ucommon/linked.h File Reference

Linked objects, lists, templates, and containers. More...

#include <ucommon/platform.h>
#include <ucommon/object.h>

Include dependency graph for linked.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  ucc

Data Structures

class  ucc::DLinkedObject
 A double-linked Object, used for certain kinds of lists. More...
class  ucc::keylist< T >
 A template for ordered index of typed name key mapped objects. More...
class  ucc::keymap< T, M >
 A template class for a hash map. More...
class  ucc::linked_pointer< T >
 A smart pointer template for iterating linked lists. More...
class  ucc::linked_value< T, O >
 Template value class to embed data structure into a linked list. More...
class  ucc::LinkedList
 A double linked list object. More...
class  ucc::LinkedObject
 Common base class for all objects that can be formed into a linked list. More...
class  ucc::multimap< T, P >
 Embed data objects into a multipap structured memory database. More...
class  ucc::MultiMap
 A multipath linked list where membership is managed in multiple lists. More...
class  ucc::named_value< T, O >
 Template value class to embed data structure into a named list. More...
class  ucc::NamedObject
 A linked object base class with members found by name. More...
class  ucc::NamedTree
 The named tree class is used to form a tree oriented list of associated objects. More...
class  ucc::ObjectQueue
 A queue of double linked object. More...
class  ucc::objfifo< T >
 Template for typesafe basic object fifo container. More...
class  ucc::objqueue< T >
 Template for typesafe basic object queue container. More...
class  ucc::objstack< T >
 Template for typesafe basic object stack container. More...
class  ucc::OrderedIndex
 An index container for maintaining an ordered list of objects. More...
class  ucc::OrderedObject
 A linked object base class for ordered objects. More...
class  ucc::ReusableObject
 Reusable objects for forming private heaps. More...
class  ucc::treemap< T >
 Embed data objects into a tree structured memory database. More...

Typedefs

typedef LinkedObject * ucc::LinkedIndex
 Convenience typedef for root pointers of single linked lists.
typedef OrderedIndex ucc::objfifo_t
 Convenience type for a fifo of linked objects.
typedef ObjectQueue ucc::objqueue_t
 Convenience type for a queue of linked objects.
typedef ObjectStack ucc::objstack_t
 Convenience type for a stack of linked objects.

Functions

void ucc::add (ObjectQueue &queue, DLinkedObject *object)
 Add a linked object to end of queue of objects.
void ucc::add (OrderedIndex &fifo, LinkedObject *object)
 Add a linked object onto a fifo of linked objects.
void ucc::add (ObjectStack &stack, LinkedObject *object)
 Add a linked object onto a stack of linked objects.
DLinkedObject * ucc::pop (ObjectQueue &queue)
 Pop a linked object from end of queue.
LinkedObject * ucc::pop (OrderedIndex &fifo)
 Pop a linked object from a fifo of linked objects.
LinkedObject * ucc::pop (ObjectStack &stack)
 Pop a linked object from a stack of linked objects.
DLinkedObject * ucc::pull (ObjectQueue &queue)
 Pull a linked object from start of a queue.
LinkedObject * ucc::pull (OrderedIndex &fifo)
 Pop a linked object from a fifo of linked objects.
LinkedObject * ucc::pull (ObjectStack &stack)
 Pop a linked object from a stack of linked objects.
void ucc::push (ObjectQueue &queue, DLinkedObject *object)
 Push a linked object to start of queue.
void ucc::push (OrderedIndex &fifo, LinkedObject *object)
 Push a linked object onto a fifo of linked objects.
void ucc::push (ObjectStack &stack, LinkedObject *object)
 Push a linked object onto a stack of linked objects.


Detailed Description

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.


Generated on Tue May 17 12:15:03 2011 for UCommon by  doxygen 1.5.6