New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
SysController Class Reference

#include <SysController.h>

Inherits sead::Controller.

Public Types

enum  Id {
  cId_CafeDRC_SinglePlayer = 0 , cId_CafeRemote_1 = cId_CafeDRC_SinglePlayer , cId_CafeRemote_2 , cId_CafeRemote_3 ,
  cId_CafeRemote_4 , cId_CafeDRC_Multiplayer , cId_Max
}
Public Types inherited from sead::Controller
enum  PadIdx
enum  PadFlag

Public Member Functions

 SysController (sead::ControllerMgr *mgr, Id id)
Public Member Functions inherited from sead::Controller
 Controller (ControllerMgr *mgr)
virtual ~Controller ()
virtual void calc ()
virtual bool isConnected () const
ControllerDefine::ControllerId getId () const
ControllerAddongetAddon (ControllerDefine::AddonId id) const
getAddonAs () const
Public Member Functions inherited from sead::ControllerBase
 ControllerBase (s32 padBitMax, s32 leftStickCrossStartBit, s32 rightStickCrossStartBit, s32 touchKeyBit)
u32 getHoldMask () const
u32 getTrigMask () const
u32 getReleaseMask () const
u32 getRepeatMask () const
u32 getTrigMaskWithRepeat () const
u32 getPadHoldCount (s32 bit) const
const Vector2fgetLeftStick () const
const Vector2fgetRightStick () const
f32 getLeftAnalogTrigger () const
f32 getRightAnalogTrigger () const
const Vector2fgetPointer () const
const Vector2igetPointerPrev () const
bool isPointerOn () const
bool isPointerOnNow () const
bool isPointerOffNow () const
bool isPointerUnkFlag3 () const
bool isHold (u32 mask) const
bool isTrig (u32 mask) const
bool isHoldAll (u32 mask) const
bool isRelease (u32 mask) const
bool isRepeat (u32 mask) const
bool isTrigWithRepeat (u32 mask) const
void setPadRepeat (u32 mask, u8 delay_frame, u8 pulse_frame)
void setLeftStickCrossThreshold (f32 hold, f32 release)
void setRightStickCrossThreshold (f32 hold, f32 release)
void setPointerBound (const BoundBox2f &bound)
const BoundBox2fgetPointerBound () const

Protected Member Functions

void calcRemote_Core_ (const sead::Controller *controller)
void calcRemote_Nunchuk_ (const sead::Controller *controller)
void calcRemote_URCC_ (const sead::Controller *controller)
void calcRemote_URCC_Acc_ (const sead::Controller *controller)
Protected Member Functions inherited from sead::Controller
virtual void calcImpl_ ()=0
virtual bool isIdle_ ()
virtual void setIdle_ ()
Protected Member Functions inherited from sead::ControllerBase
bool isIdleBase_ ()
void setIdleBase_ ()
void setPointerWithBound_ (bool is_on, bool touchkey_hold, const Vector2f &pos)
void updateDerivativeParams_ (u32 prev_hold, bool prev_pointer_on)
u32 getStickHold_ (u32 prev_hold, const Vector2f &stick, f32 hold_threshold, f32 release_threshold, s32 start_bit)
u32 createStickCrossMask_ ()

Protected Attributes

u32 _15c [(0x1D4 - 0x15C)/sizeof(u32)]
Protected Attributes inherited from sead::Controller
ControllerDefine::ControllerId mId
ControllerMgrmMgr
OffsetList< ControllerAddonmAddons
OffsetList< ControllerWrapperBasemWrappers
Protected Attributes inherited from sead::ControllerBase
 cPadIdx_MaxBase
 cPointerOn
 cPointerOnNow
 cPointerOffNow
 cPointerUnkFlag3
 cCrossUp
 cCrossDown
 cCrossLeft
 cCrossRight
BitFlag32 mPadTrig
BitFlag32 mPadRelease
BitFlag32 mPadRepeat
BitFlag32 mPointerFlag
Vector2i mPointerS32
BoundBox2f mPointerBound
u32 mPadHoldCounts [cPadIdx_MaxBase]
u8 mPadRepeatDelays [cPadIdx_MaxBase]
u8 mPadRepeatPulses [cPadIdx_MaxBase]
f32 mLeftStickHoldThreshold
f32 mRightStickHoldThreshold
f32 mLeftStickReleaseThreshold
f32 mRightStickReleaseThreshold
s32 mPadBitMax
s32 mLeftStickCrossStartBit
s32 mRightStickCrossStartBit
s32 mTouchKeyBit
s32 mIdleFrame
BitFlag32 mPadHold
Vector2f mPointer
Vector2f mLeftStick
Vector2f mRightStick
f32 mLeftAnalogTrigger
f32 mRightAnalogTrigger

Additional Inherited Members

Public Attributes inherited from sead::Controller
 cPadIdx_A
 cPadIdx_B
 cPadIdx_C
 cPadIdx_X
 cPadIdx_Y
 cPadIdx_Z
 cPadIdx_2
 cPadIdx_1
 cPadIdx_Home
 cPadIdx_Minus
 cPadIdx_Plus
 cPadIdx_Start
 cPadIdx_Select
 cPadIdx_ZL
 cPadIdx_ZR
 cPadIdx_L
 cPadIdx_R
 cPadIdx_Touch
 cPadIdx_Up
 cPadIdx_Down
 cPadIdx_Left
 cPadIdx_Right
 cPadIdx_LeftStickUp
 cPadIdx_LeftStickDown
 cPadIdx_LeftStickLeft
 cPadIdx_LeftStickRight
 cPadIdx_RightStickUp
 cPadIdx_RightStickDown
 cPadIdx_RightStickLeft
 cPadIdx_RightStickRight
 cPadIdx_Max
 cPadFlag_A
 cPadFlag_B
 cPadFlag_C
 cPadFlag_X
 cPadFlag_Y
 cPadFlag_Z
 cPadFlag_2
 cPadFlag_1
 cPadFlag_Home
 cPadFlag_Minus
 cPadFlag_Plus
 cPadFlag_Start
 cPadFlag_Select
 cPadFlag_ZL
 cPadFlag_ZR
 cPadFlag_L
 cPadFlag_R
 cPadFlag_Touch
 cPadFlag_Up
 cPadFlag_Down
 cPadFlag_Left
 cPadFlag_Right
 cPadFlag_LeftStickUp
 cPadFlag_LeftStickDown
 cPadFlag_LeftStickLeft
 cPadFlag_LeftStickRight
 cPadFlag_RightStickUp
 cPadFlag_RightStickDown
 cPadFlag_RightStickLeft
 cPadFlag_RightStickRight
 cPadFlag_All
Static Public Attributes inherited from sead::ControllerBase
static const f32 cStickHoldThresholdDefault
static const f32 cStickReleaseThresholdDefault
static const Vector2f cInvalidPointer
static const Vector2i cInvalidPointerS32
Protected Types inherited from sead::ControllerBase
enum  PointerFlagMask

Member Enumeration Documentation

◆ Id

Enumerator
cId_CafeDRC_SinglePlayer 
cId_CafeRemote_1 
cId_CafeRemote_2 
cId_CafeRemote_3 
cId_CafeRemote_4 
cId_CafeDRC_Multiplayer 
cId_Max 

Constructor & Destructor Documentation

◆ SysController()

SysController::SysController ( sead::ControllerMgr * mgr,
Id id )

Member Function Documentation

◆ calcRemote_Core_()

void SysController::calcRemote_Core_ ( const sead::Controller * controller)
protected

◆ calcRemote_Nunchuk_()

void SysController::calcRemote_Nunchuk_ ( const sead::Controller * controller)
protected

◆ calcRemote_URCC_()

void SysController::calcRemote_URCC_ ( const sead::Controller * controller)
protected

◆ calcRemote_URCC_Acc_()

void SysController::calcRemote_URCC_Acc_ ( const sead::Controller * controller)
protected

Member Data Documentation

◆ _15c

u32 SysController::_15c[(0x1D4 - 0x15C)/sizeof(u32)]
protected