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

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

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<class 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 templated object, or of class types that are data pointers.

Author:
David Sugar <dyfet@gnutelephony.org>

Definition at line 1147 of file linked.h.


Member Function Documentation

template<class 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 1215 of file linked.h.

template<class 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 1167 of file linked.h.

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

Return next multimap typed object.

Parameters:
path to follow.
Returns:
multimap typed.

Reimplemented from ucc::MultiMap.

Definition at line 1175 of file linked.h.

template<class 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 1182 of file linked.h.

template<class 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 1203 of file linked.h.

template<class 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 1196 of file linked.h.

template<class 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 1189 of file linked.h.


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

Generated on Wed May 13 08:42:04 2009 for UCommon by  doxygen 1.5.7.1