// Copyright 2008 Dolphin Emulator Project // Licensed under GPLv2+ // Refer to the license.txt file included. #pragma once #ifdef __APPLE__ #include #endif #include "AudioCommon/SoundStream.h" class CoreAudioSound final : public SoundStream { #ifdef __APPLE__ public: bool Start() override; void SetVolume(int volume) override; void SoundLoop() override; void Stop() override; void Update() override; static bool isValid() { return true; } private: AudioUnit audioUnit; int m_volume; static OSStatus callback(void* inRefCon, AudioUnitRenderActionFlags* ioActionFlags, const AudioTimeStamp* inTimeStamp, UInt32 inBusNumber, UInt32 inNumberFrames, AudioBufferList* ioData); #endif };