3b8704444a
Incremented the version in preparation for the next release.
67 lines
1.6 KiB
C++
67 lines
1.6 KiB
C++
#ifndef CMEMORYOVERRIDE_H_INCLUDED
|
|
#define CMEMORYOVERRIDE_H_INCLUDED
|
|
|
|
#include <new>
|
|
#include "../include/cAudioMemory.h"
|
|
|
|
namespace cAudio
|
|
{
|
|
//! Overrides the memory allocations for classes derived from it and makes them use the cAudio memory system
|
|
class cMemoryOverride
|
|
{
|
|
public:
|
|
void* operator new(size_t size, const char* file, int line, const char* function)
|
|
{
|
|
return cAudio::getMemoryProvider()->Allocate(size, file, line, function);
|
|
}
|
|
|
|
void* operator new(size_t size)
|
|
{
|
|
return cAudio::getMemoryProvider()->Allocate(size, NULL, -1, NULL);
|
|
}
|
|
|
|
void* operator new(size_t size, void* pointer)
|
|
{
|
|
(void) size;
|
|
return pointer;
|
|
}
|
|
|
|
void* operator new[] ( size_t size, const char* file, int line, const char* function )
|
|
{
|
|
return cAudio::getMemoryProvider()->Allocate(size, file, line, function);
|
|
}
|
|
|
|
void* operator new[] ( size_t size )
|
|
{
|
|
return cAudio::getMemoryProvider()->Allocate(size, NULL, -1, NULL);
|
|
}
|
|
|
|
void operator delete( void* pointer )
|
|
{
|
|
cAudio::getMemoryProvider()->Free(pointer);
|
|
}
|
|
|
|
void operator delete( void* pointer, void* )
|
|
{
|
|
cAudio::getMemoryProvider()->Free(pointer);
|
|
}
|
|
|
|
void operator delete( void* pointer, const char* , int , const char* )
|
|
{
|
|
cAudio::getMemoryProvider()->Free(pointer);
|
|
}
|
|
|
|
void operator delete[] ( void* pointer )
|
|
{
|
|
cAudio::getMemoryProvider()->Free(pointer);
|
|
}
|
|
|
|
void operator delete[] ( void* pointer, const char* , int , const char* )
|
|
{
|
|
cAudio::getMemoryProvider()->Free(pointer);
|
|
}
|
|
};
|
|
};
|
|
|
|
#endif //! CMEMORYOVERRIDE_H_INCLUDED
|