From 15740faf9fe9fe4be08965098bbf2947e096aeeb Mon Sep 17 00:00:00 2001 From: chai Date: Wed, 14 Aug 2019 22:50:43 +0800 Subject: +Unity Runtime code --- Runtime/Audio/AudioSourceFilter.h | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 Runtime/Audio/AudioSourceFilter.h (limited to 'Runtime/Audio/AudioSourceFilter.h') diff --git a/Runtime/Audio/AudioSourceFilter.h b/Runtime/Audio/AudioSourceFilter.h new file mode 100644 index 0000000..72795b3 --- /dev/null +++ b/Runtime/Audio/AudioSourceFilter.h @@ -0,0 +1,36 @@ +#ifndef __AUDIOSOURCE_FILTER_H__ +#define __AUDIOSOURCE_FILTER_H__ + +#include "Runtime/Serialize/TransferFunctions/SerializeTransfer.h" +#include "AudioManager.h" +#include "Runtime/GameCode/Behaviour.h" +#include "Runtime/Audio/correct_fmod_includer.h" + +#if ENABLE_AUDIO_FMOD + +using namespace Unity; + +class AudioFilter : public Behaviour +{ +public: + REGISTER_DERIVED_ABSTRACT_CLASS (AudioFilter, Behaviour) + DECLARE_OBJECT_SERIALIZE (AudioFilter) + + AudioFilter(MemLabelId label, ObjectCreationMode mode) : Behaviour(label, mode), m_DSP(NULL), m_Type(FMOD_DSP_TYPE_UNKNOWN) {} + + FMOD::DSP* GetDSP(); + + virtual void RemoveFromManager(); + virtual void AddToManager(); + virtual void AwakeFromLoad(AwakeFromLoadMode mode); + + void Init(); + void Cleanup(); +protected: + FMOD_DSP_TYPE m_Type; + FMOD::DSP* m_DSP; + friend class AudioManager; +}; + +#endif //ENABLE_AUDIO +#endif // __AUDIOSOURCE_FILTER_H__ -- cgit v1.1-26-g67d0