108 TBOOL m_bIsExclusiveMode;
#define TSTATICCAST(POINTERTYPE, VALUE)
#define TOSHI_NAMESPACE_START
#define TOSHI_NAMESPACE_END
TInputDevice * GetDeviceByIndex(TClass *a_pClass, TUINT a_uiIndex)
virtual TBOOL Initialise()=0
TDECLARE_CLASS(TInputInterface, TObject)
virtual TBOOL GetExclusiveMode() const
EventEmitter & GetInputEventEmitter()
TEmitter< TInputInterface, TInputInterface::InputEvent > EventEmitter
virtual TBOOL Deinitialise()=0
virtual TINT ProcessEvents(TFLOAT a_fDeltaTime)
C * GetDeviceByIndex(TUINT a_uiIndex=0)
virtual void SetExclusiveMode(TBOOL a_bIsExclusive)
void RemoveDevice(TInputDevice *device)
virtual TBOOL AcquireAll()
void AddDevice(TInputDevice *device)
virtual TBOOL UnacquireAll()
virtual void StopAllRepeats()
union TInputInterface::InputEvent::@331074113164076150144143322340042066145372056013 m_Magnitude
TINT8 GetAxisCount() const
TBOOL StartRepeat(TFLOAT a_fFirstRepeatTime=0.5f, TFLOAT a_fRepeatTime=0.1f) const
InputEvent(TInputDevice *a_pDevice, TINT a_iDoodad, EVENT_TYPE a_eEventType)
EVENT_TYPE GetEventType() const
TBOOL IsMagnitudeFloat() const
TBOOL m_bIsMagnitudeFloat
TFLOAT GetMagnitudeFloat(TINT a_iAxis) const
TBOOL IsMagnitudeInt() const
TInputDevice * GetSource() const
TINT GetMagnitudeInt(TINT a_iAxis) const
static constexpr TINT INPUT_DEVICE_MOUSE_BUTTONS
static TInputDevice * s_aDevices[MAX_DEVICE_COUNT]
virtual TBOOL IsForceFeedbackDevice()
virtual const TCHAR * GetButtonFromDoodad(Doodad a_iDoodad) const =0
virtual TINT ProcessEvents(EventEmitter &emitter, TFLOAT deltaTime)=0
virtual TBOOL StartRepeat(Doodad a_iDoodad, TFLOAT a_fFirstRepeatTime, TFLOAT a_fRepeatTime)
virtual TINT GetAxisInt(Doodad a_iDoodad, TINT axis) const =0
TArray< void * > m_Array2
TDECLARE_CLASS(TInputDevice, TObject)
virtual TINT GetAxisInt2(Doodad a_iDoodad, TINT axis) const
virtual void StopAllRepeats()
TArray< RepeatInfo > m_Repeats
TINT ProcessRepeats(EventEmitter &a_rEmitter, TFLOAT a_fDeltaTime)
virtual TBOOL Unacquire()=0
virtual TBOOL IsEnabled() const =0
virtual TBOOL GetDoodadProperties(Doodad a_iDoodad, DoodadProperties &a_rProperties) const =0
static constexpr TINT INPUT_DEVICE_MOUSE_WHEEL
static TUINT s_uiDeviceCount
virtual void StopRepeat(Doodad a_iDoodad)
virtual TFLOAT GetAxisFloat(Doodad a_iDoodad, TINT axis) const =0
virtual TINT GetButtonCount() const =0
void SetAcquired(TBOOL a_bAcquired)
TInputInterface * m_pInputInterface
TInputInterface::EventEmitter EventEmitter
virtual TBOOL Acquire()=0
virtual TFLOAT GetAxisFloat2(Doodad a_iDoodad, TINT axis) const
TInputInterface * GetInputInterface()
virtual TBOOL IsDown(Doodad a_iDoodad) const =0
static TInputDevice ** GetRegisteredDevices()
static TUINT GetNumRegisteredDevices()
virtual TINT GetAxisCount() const =0
virtual void Update(TFLOAT deltaTime)=0
virtual void ThrowRepeatEvent(EventEmitter &emitter, RepeatInfo *repeatInfo, TFLOAT deltaTime)
static constexpr TUINT MAX_DEVICE_COUNT
void SetInputInterface(TInputInterface *a_pInterface)
TSingleton(const TSingleton &)=delete