gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
SimplePoolManager Class Reference

#include <simple_pool_manager.hh>

Inheritance diagram for SimplePoolManager:
PoolManager

Public Member Functions

 SimplePoolManager (uint32_t minAlloc, uint32_t poolSize)
 
uint32_t minAllocatedElements (uint32_t size)
 
std::string printRegion ()
 
bool canAllocate (uint32_t numRegions, uint32_t size)
 
uint32_t allocateRegion (const uint32_t size, uint32_t *reservedPoolSize)
 
void freeRegion (uint32_t firstIdx, uint32_t lastIdx)
 
uint32_t regionSize (std::pair< uint32_t, uint32_t > &region)
 
- Public Member Functions inherited from PoolManager
 PoolManager (uint32_t minAlloc, uint32_t poolSize)
 
uint32_t minAllocation ()
 
uint32_t poolSize ()
 

Private Attributes

uint32_t _regionSize
 
uint8_t _nxtFreeIdx
 
uint32_t _reservedGroups
 

Detailed Description

Definition at line 46 of file simple_pool_manager.hh.

Constructor & Destructor Documentation

SimplePoolManager::SimplePoolManager ( uint32_t  minAlloc,
uint32_t  poolSize 
)
inline

Definition at line 49 of file simple_pool_manager.hh.

Member Function Documentation

uint32_t SimplePoolManager::allocateRegion ( const uint32_t  size,
uint32_t *  reservedPoolSize 
)
virtual
bool SimplePoolManager::canAllocate ( uint32_t  numRegions,
uint32_t  size 
)
virtual

Implements PoolManager.

Definition at line 67 of file simple_pool_manager.cc.

References _reservedGroups, minAllocatedElements(), and PoolManager::poolSize().

void SimplePoolManager::freeRegion ( uint32_t  firstIdx,
uint32_t  lastIdx 
)
virtual

Implements PoolManager.

Definition at line 75 of file simple_pool_manager.cc.

References _nxtFreeIdx, and _reservedGroups.

uint32_t SimplePoolManager::minAllocatedElements ( uint32_t  size)
std::string SimplePoolManager::printRegion ( )
virtual

Implements PoolManager.

Definition at line 53 of file simple_pool_manager.cc.

References _regionSize, and _reservedGroups.

uint32_t SimplePoolManager::regionSize ( std::pair< uint32_t, uint32_t > &  region)
virtual

Implements PoolManager.

Definition at line 100 of file simple_pool_manager.cc.

References PoolManager::poolSize().

Member Data Documentation

uint8_t SimplePoolManager::_nxtFreeIdx
private

Definition at line 67 of file simple_pool_manager.hh.

Referenced by allocateRegion(), and freeRegion().

uint32_t SimplePoolManager::_regionSize
private

Definition at line 65 of file simple_pool_manager.hh.

Referenced by allocateRegion(), and printRegion().

uint32_t SimplePoolManager::_reservedGroups
private

Definition at line 69 of file simple_pool_manager.hh.

Referenced by allocateRegion(), canAllocate(), freeRegion(), and printRegion().


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

Generated on Fri Jun 9 2017 13:04:19 for gem5 by doxygen 1.8.6