sead
Loading...
Searching...
No Matches
seadControlDevice.h
Go to the documentation of this file.
1#ifndef SEAD_CONTROL_DEVICE_H_
2#define SEAD_CONTROL_DEVICE_H_
3
4#include <container/seadListImpl.h>
5#include <controller/seadControllerDefine.h>
6#include <prim/seadRuntimeTypeInfo.h>
7
8namespace sead {
9
10class ControllerMgr;
11
13{
15
16public:
23
24 virtual ~ControlDevice()
25 {
26 }
27
28 virtual void calc() = 0;
29
30 ControllerDefine::DeviceId getId() const { return mId; }
31
32protected:
36
37 friend class ControllerMgr;
38};
39#ifdef cafe
40static_assert(sizeof(ControlDevice) == 0x14, "sead::ControlDevice size mismatch");
41#endif // cafe
42
43} // namespace sead
44
45#endif // SEAD_CONTROL_DEVICE_H_
Definition seadControlDevice.h:13
ControllerDefine::DeviceId getId() const
Definition seadControlDevice.h:30
ControllerDefine::DeviceId mId
Definition seadControlDevice.h:34
ListNode mListNode
Definition seadControlDevice.h:33
ControlDevice(ControllerMgr *mgr)
Definition seadControlDevice.h:17
virtual void calc()=0
ControllerMgr * mMgr
Definition seadControlDevice.h:35
virtual ~ControlDevice()
Definition seadControlDevice.h:24
Definition seadControllerDefine.h:9
DeviceId
Definition seadControllerDefine.h:27
@ cDevice_Null
Definition seadControllerDefine.h:28
Definition seadControllerMgr.h:17
Definition seadListImpl.h:11
ListNode()
Definition seadListImpl.h:13
Definition seadAssert.h:44
#define SEAD_RTTI_BASE(CLASS)
Definition seadRuntimeTypeInfo.h:75