mirror of
https://github.com/zeldaret/ss
synced 2026-06-26 18:11:55 -04:00
59 lines
1.5 KiB
C++
59 lines
1.5 KiB
C++
#ifndef NW4R_SND_STRMPLAYER_H
|
|
#define NW4R_SND_STRMPLAYER_H
|
|
#include "common.h"
|
|
#include "snd_BasicPlayer.h"
|
|
#include "snd_SoundThread.h"
|
|
|
|
namespace nw4r {
|
|
namespace snd {
|
|
namespace detail {
|
|
struct StrmPlayer : BasicPlayer, SoundThread::PlayerCallback {
|
|
enum StartOffsetType {
|
|
|
|
};
|
|
|
|
virtual ~StrmPlayer(); // at 0x8
|
|
virtual bool Start(); // at 0xc
|
|
virtual void Stop(); // at 0x10
|
|
virtual void Pause(bool); // at 0x14
|
|
virtual bool IsActive() const; // at 0x18
|
|
virtual bool IsStarted() const; // at 0x1c
|
|
virtual bool IsPause() const; // at 0x20
|
|
|
|
virtual void OnUpdateFrameSoundThread(); // at 0xc
|
|
virtual void OnUpdateVoiceSoundThread(); // at 0x10
|
|
virtual void OnShutdownSoundThread(); // at 0x14
|
|
|
|
struct StrmDataLoadTask {
|
|
virtual ~StrmDataLoadTask();
|
|
virtual UNKTYPE Execute();
|
|
virtual UNKTYPE Cancel();
|
|
virtual UNKTYPE OnCancel();
|
|
};
|
|
|
|
struct StrmHeaderLoadTask {
|
|
virtual ~StrmHeaderLoadTask();
|
|
virtual UNKTYPE Execute();
|
|
virtual UNKTYPE Cancel();
|
|
virtual UNKTYPE OnCancel();
|
|
};
|
|
|
|
bool IsPrepared() const {
|
|
return mIsPrepared;
|
|
}
|
|
|
|
StrmPlayer();
|
|
bool Setup(StrmBufferPool *);
|
|
bool Prepare(ut::FileStream *, int, StartOffsetType, int);
|
|
void Shutdown();
|
|
|
|
char UNK_D8[0x113 - 0xD8];
|
|
bool mIsPrepared; // at 0x113
|
|
char UNK_120[0x78C];
|
|
};
|
|
} // namespace detail
|
|
} // namespace snd
|
|
} // namespace nw4r
|
|
|
|
#endif
|