2019-12-11 00:51:42 -05:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <xaudio2.h>
|
|
|
|
|
|
|
|
|
|
class GpAudioChannelXAudio2;
|
|
|
|
|
|
|
|
|
|
class GpAudioChannelXAudio2Callbacks final : public IXAudio2VoiceCallback
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
explicit GpAudioChannelXAudio2Callbacks(GpAudioChannelXAudio2 *owner);
|
|
|
|
|
|
2024-08-03 23:39:16 -04:00
|
|
|
void STDMETHODCALLTYPE OnVoiceProcessingPassStart(UINT32 BytesRequired) override;
|
|
|
|
|
void STDMETHODCALLTYPE OnVoiceProcessingPassEnd() override;
|
|
|
|
|
void STDMETHODCALLTYPE OnStreamEnd() override;
|
|
|
|
|
void STDMETHODCALLTYPE OnBufferStart(void* pBufferContext) override;
|
|
|
|
|
void STDMETHODCALLTYPE OnBufferEnd(void* pBufferContext) override;
|
|
|
|
|
void STDMETHODCALLTYPE OnLoopEnd(void* pBufferContext) override;
|
|
|
|
|
void STDMETHODCALLTYPE OnVoiceError(void* pBufferContext, HRESULT Error) override;
|
2019-12-11 00:51:42 -05:00
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
GpAudioChannelXAudio2 *m_owner;
|
|
|
|
|
};
|