sead
Loading...
Searching...
No Matches
seadControllerWrapperBase.h
Go to the documentation of this file.
1#ifndef SEAD_CONTROLLER_WRAPPER_BASE_H_
2#define SEAD_CONTROLLER_WRAPPER_BASE_H_
3
4#include <controller/seadController.h>
5#include <heap/seadDisposer.h>
6#include <prim/seadRuntimeTypeInfo.h>
7
8namespace sead {
9
10class Controller;
11
13{
15
16public:
18 ~ControllerWrapperBase() override;
19
20 void registerWith(Controller* controller, bool copy_repeat_setting);
21 void unregister();
22 void copyRepeatSetting(const Controller* controller);
23 void setEnable(bool enable);
24 void setEnableOtherWrappers(bool enable) const;
25
26 virtual void calc(u32 prev_hold, bool prev_pointer_on) = 0;
27 virtual void setIdle();
28
29protected:
30 virtual bool isIdle_();
31
32protected:
37
38 friend class Controller;
39};
40#ifdef cafe
41static_assert(sizeof(ControllerWrapperBase) == 0x174, "sead::ControllerWrapperBase size mismatch");
42#endif // cafe
43
44} // namespace sead
45
46#endif // SEAD_CONTROLLER_WRAPPER_BASE_H_
Definition seadControllerBase.h:13
@ cPadIdx_MaxBase
Definition seadControllerBase.h:88
Definition seadControllerWrapperBase.h:13
ControllerWrapperBase()
Definition seadControllerWrapperBase.cpp:7
virtual void calc(u32 prev_hold, bool prev_pointer_on)=0
void copyRepeatSetting(const Controller *controller)
Definition seadControllerWrapperBase.cpp:43
void setEnableOtherWrappers(bool enable) const
Definition seadControllerWrapperBase.cpp:54
virtual bool isIdle_()
Definition seadControllerWrapperBase.cpp:73
bool mIsEnable
Definition seadControllerWrapperBase.h:34
ListNode mListNode
Definition seadControllerWrapperBase.h:35
void setEnable(bool enable)
Definition seadControllerWrapperBase.cpp:49
~ControllerWrapperBase() override
Definition seadControllerWrapperBase.cpp:16
virtual void setIdle()
Definition seadControllerWrapperBase.cpp:68
void registerWith(Controller *controller, bool copy_repeat_setting)
Definition seadControllerWrapperBase.cpp:21
u8 mPadConfig[cPadIdx_MaxBase]
Definition seadControllerWrapperBase.h:36
Controller * mController
Definition seadControllerWrapperBase.h:33
void unregister()
Definition seadControllerWrapperBase.cpp:34
Definition seadController.h:28
Definition seadDisposer.h:12
Definition seadListImpl.h:11
Definition seadAssert.h:44
#define SEAD_RTTI_BASE(CLASS)
Definition seadRuntimeTypeInfo.h:75