ucc::multimap< T, P > Class Template Reference

Embed data objects into a multipap structured memory database. More...

#include <linked.h>

Inheritance diagram for ucc::multimap< T, P >:

Inheritance graph
[legend]
Collaboration diagram for ucc::multimap< T, P >:

Collaboration graph
[legend]

Public Member Functions

T & get (void) const
 Return the typed value of this node.
 multimap ()
 Construct a multimap node.
multimapnext (unsigned path)
 Return next multimap typed object.
T & operator* () const
 Return typed value of this node by pointer reference.
void operator= (const T &data)
 Assign the value of our node.
void set (const T &reference)
 Set the value of a data based value tree.
void setPointer (const T pointer)
 Set the pointer of a pointer based value tree.
 ~multimap ()
 Destroy a multimap object.

Static Public Member Functions

static multimapfind (unsigned path, MultiMap **index, caddr_t key, unsigned size, unsigned keysize=0)
 Find multimap key entry.

Protected Attributes

value

Detailed Description

template<typename T, unsigned P>
class ucc::multimap< T, P >

Embed data objects into a multipap structured memory database.

This can be used to form multi-key hash nodes. Embedded values can either be of direct types that are then stored as part of the template object, or of class types that are data pointers.

Author:
David Sugar <dyfet@gnutelephony.org>

Definition at line 1448 of file linked.h.


Member Function Documentation

template<typename T, unsigned P>
static multimap* ucc::multimap< T, P >::find ( unsigned  path,
MultiMap **  index,
caddr_t  key,
unsigned  size,
unsigned  keysize = 0 
) [inline, static]

Find multimap key entry.

Parameters:
path to search through.
index of associated keys.
key to search for, binary or NULL terminated string.
size of index used.
keysize or 0 if NULL terminated string.
Returns:
multipath typed object.

Definition at line 1516 of file linked.h.

template<typename T, unsigned P>
T& ucc::multimap< T, P >::get ( void   )  const [inline]

Return the typed value of this node.

Returns:
reference to value of node.

Definition at line 1468 of file linked.h.

template<typename T, unsigned P>
multimap* ucc::multimap< T, P >::next ( unsigned  path  )  [inline]

Return next multimap typed object.

Parameters:
path to follow.
Returns:
multimap typed.

Definition at line 1476 of file linked.h.

template<typename T, unsigned P>
T& ucc::multimap< T, P >::operator* (  )  const [inline]

Return typed value of this node by pointer reference.

Returns:
value of node.

Definition at line 1483 of file linked.h.

template<typename T, unsigned P>
void ucc::multimap< T, P >::operator= ( const T &  data  )  [inline]

Assign the value of our node.

Parameters:
data value to assign.

Definition at line 1504 of file linked.h.

template<typename T, unsigned P>
void ucc::multimap< T, P >::set ( const T &  reference  )  [inline]

Set the value of a data based value tree.

Parameters:
reference to value to copy into node.

Definition at line 1497 of file linked.h.

template<typename T, unsigned P>
void ucc::multimap< T, P >::setPointer ( const T  pointer  )  [inline]

Set the pointer of a pointer based value tree.

Parameters:
pointer to set.

Definition at line 1490 of file linked.h.


The documentation for this class was generated from the following file:

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