OdysseyDecomp/lib/al/Library/Controller/GamePadSystem.h
2024-07-09 21:48:16 +02:00

37 lines
914 B
C++

#pragma once
#include <container/seadBuffer.h>
#include <prim/seadSafeString.h>
namespace al {
class AudioSystem;
class GamePadSystem {
public:
GamePadSystem();
void changeSinglePlayMode();
void changeMultiPlayMode(s32 minControllers, s32 maxControllers);
bool isDisconnectPlayable();
void update();
void setDisconnectFrame(s32 frame);
void setInvalidateDisconnectFrame(s32 frame);
void setPadName(u8, const sead::WSafeString&);
sead::WSafeString getPadName(u8);
s32 getPadPlayStyle(u8); // unknown return type
private:
bool isDisconnectPlayableImpl();
s32 mMinControllerCount;
s32 mMaxControllerCount;
s32 mDisconnectTimer;
s32 mDisconnectFrame;
s32 mInvalidateDisconnectFrame;
sead::Buffer<sead::WFixedSafeString<256>> mControllerNames;
AudioSystem* mAudioSystem;
};
static_assert(sizeof(GamePadSystem) == 0x30);
} // namespace al