Added generic Allocation Pool Interface
This commit is contained in:
@@ -17,14 +17,19 @@
|
||||
int main(int argc, char ** argv)
|
||||
{
|
||||
// Set up a cChunkData with known contents - all blocks 0x01, all metas 0x02:
|
||||
class cStarvationCallbacks
|
||||
: public cAllocationPool<cChunkData::sChunkSection, 1600>::cStarvationCallbacks
|
||||
{
|
||||
virtual void OnStartingUsingBuffer() {}
|
||||
virtual void OnStopUsingBuffer() {}
|
||||
virtual void OnBufferEmpty() {}
|
||||
};
|
||||
cAllocationPool<cChunkData::sChunkSection, 1600> Pool(std::auto_ptr<cAllocationPool<cChunkData::sChunkSection, 1600>::cStarvationCallbacks>(new cStarvationCallbacks()));
|
||||
class cMockAllocationPool
|
||||
: public cAllocationPool<cChunkData::sChunkSection>
|
||||
{
|
||||
virtual cChunkData::sChunkSection * Allocate()
|
||||
{
|
||||
return new cChunkData::sChunkSection();
|
||||
}
|
||||
|
||||
virtual void Free(cChunkData::sChunkSection * a_Ptr)
|
||||
{
|
||||
delete a_Ptr;
|
||||
}
|
||||
} Pool;
|
||||
cChunkData Data(Pool);
|
||||
cChunkDef::BlockTypes BlockTypes;
|
||||
cChunkDef::BlockNibbles BlockMetas;
|
||||
|
||||
Reference in New Issue
Block a user