Removing apu/ deps on Emulator.
This commit is contained in:
@@ -16,7 +16,6 @@
|
||||
#include "xenia/apu/apu_flags.h"
|
||||
#include "xenia/base/clock.h"
|
||||
#include "xenia/base/logging.h"
|
||||
#include "xenia/emulator.h"
|
||||
|
||||
namespace xe {
|
||||
namespace apu {
|
||||
@@ -43,9 +42,9 @@ class XAudio2AudioDriver::VoiceCallback : public IXAudio2VoiceCallback {
|
||||
xe::threading::Semaphore* semaphore_ = nullptr;
|
||||
};
|
||||
|
||||
XAudio2AudioDriver::XAudio2AudioDriver(Emulator* emulator,
|
||||
XAudio2AudioDriver::XAudio2AudioDriver(Memory* memory,
|
||||
xe::threading::Semaphore* semaphore)
|
||||
: AudioDriver(emulator), semaphore_(semaphore) {
|
||||
: AudioDriver(memory), semaphore_(semaphore) {
|
||||
static_assert(frame_count_ == XAUDIO2_MAX_QUEUED_BUFFERS,
|
||||
"xaudio header differs");
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#define XENIA_APU_XAUDIO2_XAUDIO2_AUDIO_DRIVER_H_
|
||||
|
||||
#include "xenia/apu/audio_driver.h"
|
||||
#include "xenia/base/threading.h"
|
||||
|
||||
struct IXAudio2;
|
||||
struct IXAudio2MasteringVoice;
|
||||
@@ -22,7 +23,7 @@ namespace xaudio2 {
|
||||
|
||||
class XAudio2AudioDriver : public AudioDriver {
|
||||
public:
|
||||
XAudio2AudioDriver(Emulator* emulator, xe::threading::Semaphore* semaphore);
|
||||
XAudio2AudioDriver(Memory* memory, xe::threading::Semaphore* semaphore);
|
||||
~XAudio2AudioDriver() override;
|
||||
|
||||
void Initialize();
|
||||
|
||||
@@ -13,18 +13,18 @@
|
||||
|
||||
#include "xenia/apu/apu_flags.h"
|
||||
#include "xenia/apu/xaudio2/xaudio2_audio_driver.h"
|
||||
#include "xenia/emulator.h"
|
||||
|
||||
namespace xe {
|
||||
namespace apu {
|
||||
namespace xaudio2 {
|
||||
|
||||
std::unique_ptr<AudioSystem> XAudio2AudioSystem::Create(Emulator* emulator) {
|
||||
return std::make_unique<XAudio2AudioSystem>(emulator);
|
||||
std::unique_ptr<AudioSystem> XAudio2AudioSystem::Create(
|
||||
cpu::Processor* processor) {
|
||||
return std::make_unique<XAudio2AudioSystem>(processor);
|
||||
}
|
||||
|
||||
XAudio2AudioSystem::XAudio2AudioSystem(Emulator* emulator)
|
||||
: AudioSystem(emulator) {}
|
||||
XAudio2AudioSystem::XAudio2AudioSystem(cpu::Processor* processor)
|
||||
: AudioSystem(processor) {}
|
||||
|
||||
XAudio2AudioSystem::~XAudio2AudioSystem() {}
|
||||
|
||||
@@ -34,7 +34,7 @@ X_STATUS XAudio2AudioSystem::CreateDriver(size_t index,
|
||||
xe::threading::Semaphore* semaphore,
|
||||
AudioDriver** out_driver) {
|
||||
assert_not_null(out_driver);
|
||||
auto driver = new XAudio2AudioDriver(emulator_, semaphore);
|
||||
auto driver = new XAudio2AudioDriver(memory_, semaphore);
|
||||
driver->Initialize();
|
||||
*out_driver = driver;
|
||||
return X_STATUS_SUCCESS;
|
||||
|
||||
@@ -18,10 +18,10 @@ namespace xaudio2 {
|
||||
|
||||
class XAudio2AudioSystem : public AudioSystem {
|
||||
public:
|
||||
explicit XAudio2AudioSystem(Emulator* emulator);
|
||||
explicit XAudio2AudioSystem(cpu::Processor* processor);
|
||||
~XAudio2AudioSystem() override;
|
||||
|
||||
static std::unique_ptr<AudioSystem> Create(Emulator* emulator);
|
||||
static std::unique_ptr<AudioSystem> Create(cpu::Processor* processor);
|
||||
|
||||
X_RESULT CreateDriver(size_t index, xe::threading::Semaphore* semaphore,
|
||||
AudioDriver** out_driver) override;
|
||||
|
||||
Reference in New Issue
Block a user