mirror of https://github.com/zeldaret/tp.git
50 lines
1.1 KiB
C++
50 lines
1.1 KiB
C++
#ifndef __Z2SOUNDOBJECT_H__
|
|
#define __Z2SOUNDOBJECT_H__
|
|
|
|
#include "JSystem/JGeometry/JGeometry.h"
|
|
#include "Z2AudioLib/Z2SoundHandles/Z2SoundHandles.h"
|
|
#include "Z2AudioLib/Z2SoundStarter/Z2SoundStarter.h"
|
|
#include "global.h"
|
|
|
|
/* struct Z2SoundObjBase_vtable {
|
|
void* field_0x0;
|
|
void* field_0x4;
|
|
void* framework;
|
|
void* dispose;
|
|
void* stopOK;
|
|
void* init;
|
|
void* startSound;
|
|
void* startLevelSound;
|
|
};
|
|
*/
|
|
|
|
class Z2SoundObjBase : protected Z2SoundHandles {
|
|
public:
|
|
Z2SoundObjBase();
|
|
~Z2SoundObjBase();
|
|
|
|
void deleteObject();
|
|
|
|
bool isAlive() const { return mIsInitialized; }
|
|
|
|
virtual void framework(u32, s8);
|
|
virtual void dispose();
|
|
virtual bool stopOK(Z2SoundHandlePool& pool);
|
|
virtual void init(Vec* pSoundPos, u8 pNumHandles);
|
|
|
|
// Z2SoundObjBase_vtable* vtable;
|
|
Z2SoundStarter* mSoundStarter;
|
|
Vec* mSoundPos;
|
|
u16 field_0x1c;
|
|
u8 field_0x1e;
|
|
bool mIsInitialized;
|
|
};
|
|
|
|
class Z2SoundObjSimple : protected Z2SoundHandles {
|
|
public:
|
|
virtual void init(Vec* pSoundPos, u8 pNumHandles);
|
|
};
|
|
|
|
class Z2DopplerSoundObjBase : protected Z2SoundHandles {};
|
|
|
|
#endif |