sead
Loading...
Searching...
No Matches
seadPatternRumbleAddon.h
Go to the documentation of this file.
1#ifndef SEAD_PATTERN_RUMBLE_ADDON_H_
2#define SEAD_PATTERN_RUMBLE_ADDON_H_
3
4#include <controller/seadControllerAddon.h>
5
6namespace sead {
7
8class PatternRumbleAddon : public ControllerAddon
9{
10 SEAD_RTTI_OVERRIDE(PatternRumbleAddon, ControllerAddon)
11
12public:
13 PatternRumbleAddon(Controller* controller);
14 virtual ~PatternRumbleAddon() { }
15
16 virtual bool calc();
17
18protected:
19 virtual void startRumbleImpl_() = 0;
20 virtual void stopRumbleImpl_() = 0;
21
22public:
23 bool isPatternEnable() const;
24 void startPattern(const char* pattern, u32 duration);
25 void stopPattern();
26
27protected:
28 const char* mPattern;
29 u32 mPatternIdx;
30 u32 mPatternDuration;
31};
32#ifdef cafe
33static_assert(sizeof(PatternRumbleAddon) == 0x20, "sead::PatternRumbleAddon size mismatch");
34#endif // cafe
35
36} // namespace sead
37
38#endif // SEAD_PATTERN_RUMBLE_ADDON_H_
Definition seadControllerAddon.h:14
Definition seadController.h:28
Definition seadAssert.h:44
#define SEAD_RTTI_OVERRIDE(CLASS, BASE)
Definition seadRuntimeTypeInfo.h:96