OpenBarnyard
 
Loading...
Searching...
No Matches
TInputDeviceMouse Class Reference

#include <TInputDeviceMouse.h>

Inheritance diagram for TInputDeviceMouse:
TInputDevice TObject TNodeList< T >::TNode TInputDXDeviceMouse

Public Types

enum  : Doodad {
  BUTTON_1 = 0x30001 , BUTTON_2 = 0x30002 , BUTTON_3 = 0x30003 , BUTTON_4 = 0x30004 ,
  BUTTON_5 = 0x30005 , BUTTON_6 = 0x30006 , BUTTON_7 = 0x30007 , BUTTON_8 = 0x30008 ,
  BUTTON_WHEEL_FORWARD = 0x30009 , BUTTON_WHEEL_BACKWARD = 0x3000A , AXIS_CURSOR = 0x3000B , AXIS_WHEEL = 0x3000C
}
 
- Public Types inherited from TInputDevice
using EventEmitter = TInputInterface::EventEmitter
 
using Doodad = TINT
 
- Public Types inherited from TObject
enum  { IsTObject = TTRUE }
 

Public Member Functions

 TDECLARE_CLASS (TInputDeviceMouse, TInputDevice)
 
 TInputDeviceMouse ()
 
 ~TInputDeviceMouse ()
 
virtual TBOOL GetDoodadProperties (Doodad a_iDoodad, TInputDevice::DoodadProperties &props) const override
 
virtual const TCHARGetButtonFromDoodad (Doodad a_iDoodad) const override
 
- Public Member Functions inherited from TInputDevice
 TDECLARE_CLASS (TInputDevice, TObject)
 
 TInputDevice ()
 
 ~TInputDevice ()=default
 
virtual TBOOL Acquire ()=0
 
virtual TBOOL Unacquire ()=0
 
virtual void Release ()=0
 
virtual void Update (TFLOAT deltaTime)=0
 
virtual TBOOL Flush ()
 
virtual TINT ProcessEvents (EventEmitter &emitter, TFLOAT deltaTime)=0
 
virtual TINT GetButtonCount () const =0
 
virtual TINT GetAxisCount () const =0
 
virtual TBOOL StartRepeat (Doodad a_iDoodad, TFLOAT a_fFirstRepeatTime, TFLOAT a_fRepeatTime)
 
virtual void StopRepeat (Doodad a_iDoodad)
 
virtual void StopAllRepeats ()
 
virtual TBOOL IsForceFeedbackDevice ()
 
virtual TBOOL IsDown (Doodad a_iDoodad) const =0
 
virtual TINT GetAxisInt (Doodad a_iDoodad, TINT axis) const =0
 
virtual TINT GetAxisInt2 (Doodad a_iDoodad, TINT axis) const
 
virtual TFLOAT GetAxisFloat (Doodad a_iDoodad, TINT axis) const =0
 
virtual TFLOAT GetAxisFloat2 (Doodad a_iDoodad, TINT axis) const
 
virtual TBOOL IsEnabled () const =0
 
virtual void ThrowRepeatEvent (EventEmitter &emitter, RepeatInfo *repeatInfo, TFLOAT deltaTime)
 
TBOOL IsAcquired () const
 
void SetAcquired (TBOOL a_bAcquired)
 
TInputInterfaceGetInputInterface ()
 
void SetInputInterface (TInputInterface *a_pInterface)
 
- Public Member Functions inherited from TObject
virtual Toshi::TClass * GetClass ()
 
virtual void Delete ()
 
virtual ~TObject ()
 
TBOOL IsExactly (TClass *a_pClass)
 
TBOOL IsA (TClass *a_pClass)
 
- Public Member Functions inherited from TNodeList< T >::TNode
constexpr TNode ()
 
constexpr TNode (const TNode &a_rcNode)
 
 TNode (TNode &&a_rNode)
 
T * Next () const
 
T * Prev () const
 
void Remove ()
 
void SetList (TNodeList *list)
 
TNodeListGetList () const
 
TBOOL IsLinked () const
 

Additional Inherited Members

- Static Public Member Functions inherited from TInputDevice
static TInputDevice ** GetRegisteredDevices ()
 
static TUINT GetNumRegisteredDevices ()
 
- Static Public Member Functions inherited from TObject
static Toshi::TObject * CreateTObject ()
 
static Toshi::TObject * CreateTObjectInPlace (void *a_pPtr)
 
static void InitialiseClass ()
 
static void DeinitialiseClass ()
 
static TFORCEINLINE TClassGetClassStatic ()
 
- Static Public Attributes inherited from TInputDevice
static constexpr TINT INPUT_DEVICE_MOUSE_BUTTONS = 3
 
static constexpr TINT INPUT_DEVICE_MOUSE_WHEEL = 4
 
- Static Public Attributes inherited from TObject
static constexpr Toshi::TClass * PARENTCLASS = TNULL
 
static constinit Toshi::TClass ms_oClass = Toshi::TClass( "TObject", TObject::CreateTObject, TObject::CreateTObjectInPlace, TObject::InitialiseClass, TObject::DeinitialiseClass, 0, 2, sizeof( TObject ), alignof( TObject ) )
 
- Protected Member Functions inherited from TInputDevice
TINT ProcessRepeats (EventEmitter &a_rEmitter, TFLOAT a_fDeltaTime)
 
- Protected Attributes inherited from TInputDevice
TUINT m_uiDeviceIndex
 
TArray< RepeatInfom_Repeats
 
TArray< void * > m_Array2
 
TBOOL m_bUnknown
 
TBOOL m_bIsAcquired
 
TInputInterfacem_pInputInterface
 
- Protected Attributes inherited from TNodeList< T >::TNode
friend TNodeList
 
TNodeListm_pList
 
T * m_pNext
 
T * m_pPrev
 
- Static Protected Attributes inherited from TInputDevice
static constexpr TUINT MAX_DEVICE_COUNT = 14
 
static TInputDevices_aDevices [MAX_DEVICE_COUNT]
 
static TUINT s_uiDeviceCount
 

Detailed Description

Definition at line 17 of file TInputDeviceMouse.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum : Doodad
Enumerator
BUTTON_1 
BUTTON_2 
BUTTON_3 
BUTTON_4 
BUTTON_5 
BUTTON_6 
BUTTON_7 
BUTTON_8 
BUTTON_WHEEL_FORWARD 
BUTTON_WHEEL_BACKWARD 
AXIS_CURSOR 
AXIS_WHEEL 

Definition at line 23 of file TInputDeviceMouse.h.

Constructor & Destructor Documentation

◆ TInputDeviceMouse()

TInputDeviceMouse::TInputDeviceMouse ( )

Definition at line 15 of file TInputDeviceMouse.cpp.

16{
17}

◆ ~TInputDeviceMouse()

TInputDeviceMouse::~TInputDeviceMouse ( )

Definition at line 20 of file TInputDeviceMouse.cpp.

21{
22}

Member Function Documentation

◆ GetButtonFromDoodad()

const TCHAR * TInputDeviceMouse::GetButtonFromDoodad ( Doodad a_iDoodad) const
overridevirtual

Implements TInputDevice.

Definition at line 51 of file TInputDeviceMouse.cpp.

52{
53 switch ( a_iDoodad )
54 {
55 case 0x30001:
56 return "BUTTON_1";
57 case 0x30002:
58 return "BUTTON_2";
59 case 0x30003:
60 return "BUTTON_3";
61 case 0x30004:
62 return "BUTTON_4";
63 case 0x30005:
64 return "BUTTON_5";
65 case 0x30006:
66 return "BUTTON_6";
67 case 0x30007:
68 return "BUTTON_7";
69 case 0x30008:
70 return "BUTTON_8";
71 case 0x30009:
72 return "BUTTON_WHEEL_FORWARD";
73 case 0x3000A:
74 return "BUTTON_WHEEL_BACKWARD";
75 case 0x3000B:
76 return "AXIS_CURSOR";
77 case 0x3000C:
78 return "AXIS_WHEEL";
79 default:
80 return "UNKNOWN";
81 }
82}

◆ GetDoodadProperties()

TBOOL TInputDeviceMouse::GetDoodadProperties ( Doodad a_iDoodad,
TInputDevice::DoodadProperties & props ) const
overridevirtual

Implements TInputDevice.

Definition at line 25 of file TInputDeviceMouse.cpp.

26{
27 if ( a_iDoodad < 0x30000 || AXIS_WHEEL < a_iDoodad )
28 {
29 return TFALSE;
30 }
31
32 switch ( a_iDoodad )
33 {
34 case AXIS_CURSOR:
35 props.m_iUnk = 2;
36 props.m_bFlag = TFALSE;
37 break;
38 case AXIS_WHEEL:
39 props.m_iUnk = 1;
40 props.m_bFlag = TFALSE;
41 break;
42 default:
43 props.m_iUnk = 0;
44 props.m_bFlag = TFALSE;
45 }
46
47 return TTRUE;
48}
#define TFALSE
Definition Typedefs.h:24
#define TTRUE
Definition Typedefs.h:25

◆ TDECLARE_CLASS()

TInputDeviceMouse::TDECLARE_CLASS ( TInputDeviceMouse ,
TInputDevice  )

The documentation for this class was generated from the following files: