#ifndef D_SND_SOURCE_HARP_RELATED_H #define D_SND_SOURCE_HARP_RELATED_H #include "d/snd/d_snd_source.h" class dSndSourceHarpRelated_c : public dSoundSource_c { public: dSndSourceHarpRelated_c(s32 sourceType, dAcBase_c *ac, const char *name, dSndSourceGroup_c *pOwnerGroup); virtual ~dSndSourceHarpRelated_c(); /* 0x18C */ virtual void postCalc() override; /* 0x1D0 */ virtual void setPause(bool flag, int fadeFrames) override; /* 0x1EC */ virtual UNKWORD d_s_harp_vt_0x1EC() const { return 0; } /* 0x1F0 */ virtual void d_s_harp_vt_0x1F0(); /* 0x1F4 */ virtual void d_s_harp_vt_0x1F4(); /* 0x1F8 */ virtual void d_s_harp_vt_0x1F8(); private: /* 0x15C */ u8 _0x15C[0x1BC - 0x15C]; }; class dSndSourceHarpTg_c : public dSndSourceHarpRelated_c { public: dSndSourceHarpTg_c(s32 sourceType, dAcBase_c *ac, const char *name, dSndSourceGroup_c *pOwnerGroup) : dSndSourceHarpRelated_c(sourceType, ac, name, pOwnerGroup) {} private: }; class dSndSourceHarpObjWarp_c : public dSndSourceHarpRelated_c { public: dSndSourceHarpObjWarp_c(s32 sourceType, dAcBase_c *ac, const char *name, dSndSourceGroup_c *pOwnerGroup) : dSndSourceHarpRelated_c(sourceType, ac, name, pOwnerGroup) {} /* 0x188 */ virtual void postSetup() override; /* 0x18C */ virtual void postCalc() override; private: }; class dSndSourceHarpSwHarp_c : public dSndSourceHarpRelated_c { public: dSndSourceHarpSwHarp_c(s32 sourceType, dAcBase_c *ac, const char *name, dSndSourceGroup_c *pOwnerGroup) : dSndSourceHarpRelated_c(sourceType, ac, name, pOwnerGroup) {} /* 0x188 */ virtual void postSetup() override; /* 0x18C */ virtual void postCalc() override; private: }; class dSndSourceHarpSwHarp4_c : public dSndSourceHarpRelated_c { public: dSndSourceHarpSwHarp4_c(s32 sourceType, dAcBase_c *ac, const char *name, dSndSourceGroup_c *pOwnerGroup); /* 0x188 */ virtual void postSetup() override; /* 0x18C */ virtual void postCalc() override; private: /* 0x1BC */ u8 _0x1BC[0x210 - 0x1BC]; }; #endif