mirror of
https://github.com/zeldaret/ss
synced 2026-07-03 20:40:09 -04:00
63 lines
1.5 KiB
C++
63 lines
1.5 KiB
C++
#ifndef NW4R_SND_SOUND_ACTOR_H
|
|
#define NW4R_SND_SOUND_ACTOR_H
|
|
|
|
/*******************************************************************************
|
|
* headers
|
|
*/
|
|
|
|
#include "common.h" // nullptr
|
|
|
|
#include "nw4r/snd/snd_BasicSound.h"
|
|
#include "nw4r/snd/snd_ExternalSoundPlayer.h"
|
|
#include "nw4r/snd/snd_SoundStartable.h"
|
|
|
|
/*******************************************************************************
|
|
* types
|
|
*/
|
|
|
|
// forward declarations
|
|
namespace nw4r { namespace snd { class SoundArchivePlayer; }}
|
|
|
|
/*******************************************************************************
|
|
* classes and functions
|
|
*/
|
|
|
|
namespace nw4r { namespace snd
|
|
{
|
|
// [R89JEL]:/bin/RVL/Debug/mainD.elf:.debug::0x278fa
|
|
class SoundActor : public SoundStartable
|
|
{
|
|
// methods
|
|
public:
|
|
// cdtors
|
|
SoundActor();
|
|
|
|
// methods
|
|
detail::ExternalSoundPlayer *detail_GetActorPlayer(int actorPlayerId)
|
|
{
|
|
if (actorPlayerId < 0 || ACTOR_PLAYER_COUNT <= actorPlayerId)
|
|
return nullptr;
|
|
|
|
return &mActorPlayer[actorPlayerId];
|
|
}
|
|
|
|
detail::SoundActorParam const &detail_GetActorParam() const
|
|
{
|
|
return mActorParam;
|
|
}
|
|
|
|
// static members
|
|
public:
|
|
static int const ACTOR_PLAYER_COUNT = 4;
|
|
|
|
// members
|
|
private:
|
|
/* base SoundStartable */ // size 0x04, offset 0x00
|
|
SoundArchivePlayer &mSoundArchivePlayer; // size 0x04, offset 0x04
|
|
detail::ExternalSoundPlayer mActorPlayer[ACTOR_PLAYER_COUNT]; // size 0x40, offset 0x08
|
|
detail::SoundActorParam mActorParam; // size 0x0c, offset 0x48
|
|
}; // size 0x54
|
|
}} // namespace nw4r::snd
|
|
|
|
#endif // NW4R_SND_SOUND_ACTOR_H
|