ControllerBase class
Derived classes
- class Controller
- class ControllerWrapperBase
Public static variables
- static const f32 cStickHoldThresholdDefault
- static const f32 cStickReleaseThresholdDefault
- static const Vector2f cInvalidPointer
- static const Vector2i cInvalidPointerS32
Constructors, destructors, conversion operators
- ControllerBase(s32 padBitMax, s32 leftStickCrossStartBit, s32 rightStickCrossStartBit, s32 touchKeyBit)
Public functions
- auto getHoldMask() const -> u32
- auto getTrigMask() const -> u32
- auto getReleaseMask() const -> u32
- auto getRepeatMask() const -> u32
- auto getPadHoldCount(s32 bit) const -> u32
- auto getLeftStick() const -> const Vector2f&
- auto getRightStick() const -> const Vector2f&
- auto getLeftAnalogTrigger() const -> f32
- auto getRightAnalogTrigger() const -> f32
- auto getPointer() const -> const Vector2f&
- auto getPointerPrev() const -> const Vector2i&
- auto isPointerOn() const -> bool
- auto isPointerOnNow() const -> bool
- auto isPointerOffNow() const -> bool
- auto isPointerUnkFlag3() const -> bool
- auto isHold(u32 mask) const -> bool
- auto isTrig(u32 mask) const -> bool
- auto isHoldAll(u32 mask) const -> bool
- auto isRelease(u32 mask) const -> bool
- auto isRepeat(u32 mask) const -> bool
- auto isTrigWithRepeat(u32 mask) const -> bool
- 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)
- auto getPointerBound() const -> const BoundBox2f&
Protected types
- enum (anonymous) { cPadIdx_MaxBase = 32 }
- enum PointerFlagMask { cPointerOn = 1 << 0, cPointerOnNow = 1 << 1, cPointerOffNow = 1 << 2, cPointerUnkFlag3 = 1 << 3 }
- enum (anonymous) { cCrossUp, cCrossDown, cCrossLeft, cCrossRight }
Protected functions
- auto isIdleBase_() -> bool
- void setIdleBase_()
- void setPointerWithBound_(bool is_on, bool touchkey_hold, const Vector2f& pos)
- void updateDerivativeParams_(u32 prev_hold, bool prev_pointer_on)
- auto getStickHold_(u32 prev_hold, const Vector2f& stick, f32 hold_threshold, f32 release_threshold, s32 start_bit) -> u32
- auto createStickCrossMask_() -> u32
Protected variables
- BitFlag32 mPadTrig
- BitFlag32 mPadRelease
- BitFlag32 mPadRepeat
- BitFlag32 mPointerFlag
- Vector2i mPointerS32
- BoundBox2f mPointerBound
- u32 mPadHoldCounts
- u8 mPadRepeatDelays
- u8 mPadRepeatPulses
- 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