utilmm::smart::ref_count::uniq_memory< Ty, Hash, Equal > Class Template Reference
[Smart pointers]

Unique instance memory manager. More...

#include <utilmm/smart/bits/uniq_memory.hh>

List of all members.

Public Types

typedef Ty const base_type
 Real pointed type.
typedef
mem_type::iterator 
mem_cell
 type of managed mem cells

Public Member Functions

mem_cell null_cell ()
 null cell creation
mem_cell create (base_type *ptr)
 Attachment of a new pointer.
void destroy (mem_cell c)
 Destroy a memory cell.


Detailed Description

template<typename Ty, class Hash, class Equal>
class utilmm::smart::ref_count::uniq_memory< Ty, Hash, Equal >

Unique instance memory manager.

Parameters:
Ty The type of managed cells
Hash A hash functor for Ty
Equal An equality functor for Ty
This class is a memory manager for the utilmm::smart::ref_count::manager class. It implements a memory where there's one and only one element with a given value.

In this memory we have the guarantee that there's no mem_cell pair with pointed values that return true when passed as argument to Equal

Author:
Frédéric Py <fpy@laas.fr>

Member Typedef Documentation

template<typename Ty, class Hash, class Equal>
typedef Ty const utilmm::smart::ref_count::uniq_memory< Ty, Hash, Equal >::base_type

Real pointed type.

template<typename Ty, class Hash, class Equal>
typedef mem_type::iterator utilmm::smart::ref_count::uniq_memory< Ty, Hash, Equal >::mem_cell

type of managed mem cells


Member Function Documentation

template<typename Ty, class Hash, class Equal>
mem_cell utilmm::smart::ref_count::uniq_memory< Ty, Hash, Equal >::null_cell (  )  [inline]

null cell creation

This function create the cell corresponding to null

Returns:
the null cell

template<typename Ty, class Hash, class Equal>
mem_cell utilmm::smart::ref_count::uniq_memory< Ty, Hash, Equal >::create ( base_type ptr  ) 

Attachment of a new pointer.

This function adds a new pointer to the memory management.

Parameters:
ptr The pointer to manage
Returns:
The cell associated to ptr
Note:
if memory has allready a mem_cell equivalent to ptr then ptr is deleted

template<typename Ty, class Hash, class Equal>
void utilmm::smart::ref_count::uniq_memory< Ty, Hash, Equal >::destroy ( mem_cell  c  ) 

Destroy a memory cell.

This function Will detroy a memory cell and the real pointed value

Parameters:
c The cell to destroy


The documentation for this class was generated from the following file:
Generated on Tue Feb 19 10:51:02 2008 for Util-- by doxygen 1.5.3
SourceForge.net Project Page