Arena Class Reference

#include <Arena.H>

Inheritance diagram for Arena:

Inheritance graph
[legend]

List of all members.


Detailed Description

A Virtual Base Class for Dynamic Memory Managemen.

A Virtual Base Class for Dynamic Memory Management

This is a virtual base class for objects that manage their own dynamic memory allocation. Since it is a virtual base class, you have to derive something from it to use it.

Public Types

typedef void(* FP )()

Public Member Functions

 Arena ()
 base class constructor
virtual ~Arena ()
 base class destructor.
virtual void * alloc (size_t a_sz)=0
virtual void free (void *a_pt)=0

Static Public Member Functions

static size_t align (size_t a_sz)


Member Typedef Documentation

typedef void(* Arena::FP)()


Constructor & Destructor Documentation

Arena::Arena (  ) 

base class constructor

base class constructor. registers Arena object with memory tracking system

virtual Arena::~Arena (  )  [virtual]

base class destructor.

base class destructor. unregisters Arena object with memory tracking system


Member Function Documentation

virtual void* Arena::alloc ( size_t  a_sz  )  [pure virtual]

Allocate a dynamic memory arena of size a_sz. A pointer to this memory should be returned.

Implemented in BArena, and CArena.

Referenced by BaseFab< T >::define().

virtual void Arena::free ( void *  a_pt  )  [pure virtual]

A pure virtual function for deleting the arena pointed to by a_pt.

Implemented in BArena, and CArena.

Referenced by BaseFab< T >::undefine().

size_t Arena::align ( size_t  a_sz  )  [inline, static]

Given a minimum required arena size of a_sz bytes, this returns the next largest arena size that will hold an integral number of objects of the largest of the types void*, long, double and function pointer.


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

Generated on Fri Apr 5 04:24:53 2019 for Chombo + EB by  doxygen 1.5.5