Allocator refactor

This commit is contained in:
elasota
2021-04-28 01:46:07 -04:00
parent 472462c535
commit a2d374f650
75 changed files with 473 additions and 253 deletions

View File

@@ -4,10 +4,12 @@
#include <xaudio2.h>
struct IGpAllocator;
class GpAudioBufferXAudio2 final : public IGpAudioBuffer
{
public:
static GpAudioBufferXAudio2 *Create(const void *buffer, size_t size);
static GpAudioBufferXAudio2 *Create(IGpAllocator *alloc, const void *buffer, size_t size);
void AddRef() override;
void Release() override;
@@ -15,13 +17,14 @@ public:
const XAUDIO2_BUFFER *GetXA2Buffer() const;
private:
GpAudioBufferXAudio2(const void *data, size_t size);
GpAudioBufferXAudio2(IGpAllocator *alloc, const void *data, size_t size);
~GpAudioBufferXAudio2();
void Destroy();
const void *m_data;
size_t m_size;
IGpAllocator *m_alloc;
XAUDIO2_BUFFER m_xa2Buffer;