ucommon::mapof< T, I, M, P > Class Template Reference

Inheritance diagram for ucommon::mapof< T, I, M, P >:

Inheritance graph
[legend]
Collaboration diagram for ucommon::mapof< T, I, M, P >:

Collaboration graph
[legend]

Public Member Functions

unsigned count (void)
 Get the count of typed objects stored in our hash map.
T * locate (char *name)
 Lookup a typed object by name.
T * map (char *name)
 Create mapped entry from scratch.
 mapof ()
 Construct an associated pointer hash map based on the class template.
T * operator() (char *name)
 Reference a typed object directly by name.
T * operator[] (char *name)
unsigned pages (void)
 Access to number of pages allocated from heap for our associated index pointer.
void purge (void)
 Purge the hash map of typed objects.
void unmap (char *name)
 Remove a name and typed pointer association.
unsigned utilization (void)
 Access to pager utilization stats.

Detailed Description

template<class T, unsigned I = 177, size_t M = 0, size_t P = 0>
class ucommon::mapof< T, I, M, P >

Definition at line 1085 of file memory.h.


Member Function Documentation

template<class T, unsigned I = 177, size_t M = 0, size_t P = 0>
unsigned ucommon::mapof< T, I, M, P >::count ( void   )  [inline]

Get the count of typed objects stored in our hash map.

Returns:
typed objects in map.

Reimplemented from ucommon::keyassoc.

Definition at line 1097 of file memory.h.

template<class T, unsigned I = 177, size_t M = 0, size_t P = 0>
T* ucommon::mapof< T, I, M, P >::locate ( char *  name  )  [inline]

Lookup a typed object by name.

Parameters:
name of typed object to locate.
Returns:
typed object pointer or NULL if not found.

Reimplemented from ucommon::keyassoc.

Definition at line 1111 of file memory.h.

template<class T, unsigned I = 177, size_t M = 0, size_t P = 0>
T* ucommon::mapof< T, I, M, P >::map ( char *  name  )  [inline]

Create mapped entry from scratch.

Parameters:
name to assign.

Definition at line 1129 of file memory.h.

template<class T, unsigned I = 177, size_t M = 0, size_t P = 0>
T* ucommon::mapof< T, I, M, P >::operator() ( char *  name  )  [inline]

Reference a typed object directly by name.

Parameters:
name of typed object to locate.
Returns:
typed object pointer or NULL if not found.

Reimplemented from ucommon::keyassoc.

Definition at line 1122 of file memory.h.

template<class T, unsigned I = 177, size_t M = 0, size_t P = 0>
unsigned ucommon::mapof< T, I, M, P >::pages ( void   )  [inline]

Access to number of pages allocated from heap for our associated index pointer.

This is needed because we inherit keyassoc privately.

Returns:
count of heap pages used.

Reimplemented from ucommon::memalloc.

Definition at line 1154 of file memory.h.

template<class T, unsigned I = 177, size_t M = 0, size_t P = 0>
void ucommon::mapof< T, I, M, P >::unmap ( char *  name  )  [inline]

Remove a name and typed pointer association.

If managed key names are used then the memory allocated for the name will be re-used.

Parameters:
name to remove.

Definition at line 1137 of file memory.h.

template<class T, unsigned I = 177, size_t M = 0, size_t P = 0>
unsigned ucommon::mapof< T, I, M, P >::utilization ( void   )  [inline]

Access to pager utilization stats.

This is needed because we inherit keyassoc privately.

Returns:
pager utilization, 0-100.

Reimplemented from ucommon::mempager.

Definition at line 1145 of file memory.h.


The documentation for this class was generated from the following file:
Generated on 14 Aug 2013 for UCommon by  doxygen 1.4.7