Lumiera  0.pre.03
»edit your freedom«
MemoryPool Class Reference

Description

registration and tracking of memory allocations handed out.

Definition at line 58 of file tracking-allocator.cpp.

Public Member Functions

 MemoryPool (Literal id)
 
AllocationaddAlloc (size_t bytes)
 
size_t calcAllocSize () const
 
void discardAlloc (void *loc, size_t)
 
Allocation const * findAlloc (Location) const
 
size_t getAllocationCnt () const
 
HashVal getChecksum () const
 
Literal getPoolID () const
 

Classes

struct  Allocation
 registration entry to maintain a single allocation More...
 
struct  LocationHash
 

Private Types

using AllocTab = std::unordered_map< const Location, Allocation, LocationHash >
 
using Location = void *
 

Private Attributes

AllocTab allocs_
 
HashVal checksum_
 
size_t entryNr_
 
Literal poolID_
 

Additional Inherited Members

- Private Member Functions inherited from NonCopyable
 NonCopyable (NonCopyable const &)=delete
 
NonCopyableoperator= (NonCopyable const &)=delete
 
+ Inheritance diagram for MemoryPool:
+ Collaboration diagram for MemoryPool:

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