utilmm::pools::dynamic_pool Class Reference

#include <dynamic_pool.hh>

List of all members.

Classes

struct  item_t

Public Types

typedef boost::uint32_t size_t
typedef boost::uint32_t size_t

Public Member Functions

void * allocate (size_t size)
void * allocate (size_t size)
void deallocate (void *vbuffer)
void deallocate (void *vbuffer)
 dynamic_pool ()
 dynamic_pool ()
 ~dynamic_pool ()
 ~dynamic_pool ()

Private Types

typedef std::vector< item_t * > Buffers
typedef std::vector< item_t * > Buffers
typedef boost::uint8_t byte_t
typedef boost::uint8_t byte_t

Static Private Member Functions

static item_tget_base (void *ptr)
static item_tget_base (void *ptr)

Private Attributes

Buffers m_free
Buffers m_listpool
size_t m_size

Friends

class dynamic_auto

Detailed Description

A memory_pool is a way to handle allocation and reallocation of fixed-length memory items, but with the ability to change the size at runtime. It is designed to be used for small classes with subclasses

NEVER put the pointer returned by dynamic_pool into an auto_ptr. Use dynamic_ptr instead.

Definition at line 23 of file install/include/utilmm/memory/dynamic_pool.hh.


Member Typedef Documentation

typedef std::vector<item_t*> utilmm::pools::dynamic_pool::Buffers [private]

Definition at line 40 of file utilmm/memory/dynamic_pool.hh.

typedef std::vector<item_t*> utilmm::pools::dynamic_pool::Buffers [private]
typedef boost::uint8_t utilmm::pools::dynamic_pool::byte_t [private]

Definition at line 32 of file utilmm/memory/dynamic_pool.hh.

typedef boost::uint8_t utilmm::pools::dynamic_pool::byte_t [private]
typedef boost::uint32_t utilmm::pools::dynamic_pool::size_t

Definition at line 29 of file utilmm/memory/dynamic_pool.hh.

typedef boost::uint32_t utilmm::pools::dynamic_pool::size_t

Constructor & Destructor Documentation

dynamic_pool::dynamic_pool (  ) 

Definition at line 8 of file dynamic_pool.cc.

dynamic_pool::~dynamic_pool (  ) 

Definition at line 9 of file dynamic_pool.cc.

utilmm::pools::dynamic_pool::dynamic_pool (  ) 
utilmm::pools::dynamic_pool::~dynamic_pool (  ) 

Member Function Documentation

void* utilmm::pools::dynamic_pool::allocate ( size_t  size  ) 
void * dynamic_pool::allocate ( size_t  size  ) 

Definition at line 18 of file dynamic_pool.cc.

void utilmm::pools::dynamic_pool::deallocate ( void *  vbuffer  ) 
void dynamic_pool::deallocate ( void *  vbuffer  ) 

Definition at line 43 of file dynamic_pool.cc.

static item_t* utilmm::pools::dynamic_pool::get_base ( void *  ptr  )  [static, private]
dynamic_pool::item_t * dynamic_pool::get_base ( void *  ptr  )  [static, private]

Definition at line 12 of file dynamic_pool.cc.


Friends And Related Function Documentation

dynamic_auto [friend]

Member Data Documentation


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


utilmm
Author(s): Sylvain Joyeux/sylvain.joyeux@m4x.org
autogenerated on Fri Jan 11 10:07:43 2013