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

#include <AInputMap.h>

Inheritance diagram for AInputMap:

Public Types

using ThisClass = AInputMap
 
using BaseClass = Toshi::TObject
 

Public Member Functions

virtual Toshi::TClass * GetClass () override
 
 AInputMap (const Toshi::TPString8 &a_rName)
 
const Toshi::TPString8 & GetName () const
 
void LoadFromProperties (const PBProperties &a_rProperties)
 
Toshi::T2Map< Toshi::TInputDevice::Doodad, AInputCommand > & GetCommandMap ()
 

Static Public Member Functions

static Toshi::TObject * CreateTObject ()
 
static Toshi::TObject * CreateTObjectInPlace (void *a_pPtr)
 
static void InitialiseClass ()
 
static void DeinitialiseClass ()
 
static __forceinline Toshi::TClass * GetClassStatic ()
 

Static Public Attributes

static constexpr Toshi::TClass * PARENTCLASS = & Toshi::TObject::ms_oClass
 
static Toshi::TClass ms_oClass = Toshi::TClass( "AInputMap", AInputMap::PARENTCLASS, AInputMap::CreateTObject, AInputMap::CreateTObjectInPlace, AInputMap::InitialiseClass, AInputMap::DeinitialiseClass, 0, 1, sizeof( AInputMap ), alignof( AInputMap ) )
 

Detailed Description

Definition at line 96 of file AInputMap.h.

Member Typedef Documentation

◆ BaseClass

using AInputMap::BaseClass = Toshi::TObject

Definition at line 99 of file AInputMap.h.

◆ ThisClass

Definition at line 99 of file AInputMap.h.

Constructor & Destructor Documentation

◆ AInputMap()

AInputMap::AInputMap ( const Toshi::TPString8 & a_rName)
inline

Definition at line 102 of file AInputMap.h.

103 : m_Name( a_rName ), m_oDoodadToCommandMap( AMemory::GetAllocator( AMemory::POOL_Misc ) )
104 {
105 }
@ POOL_Misc
Definition AMemory.h:35
static Toshi::T2Allocator * GetAllocator(POOL a_ePool)
Definition AMemory.cpp:31

Member Function Documentation

◆ CreateTObject()

Toshi::TObject * AInputMap::CreateTObject ( )
static

Definition at line 11 of file AInputMap.cpp.

◆ CreateTObjectInPlace()

Toshi::TObject * AInputMap::CreateTObjectInPlace ( void * a_pPtr)
static

Definition at line 11 of file AInputMap.cpp.

◆ DeinitialiseClass()

void AInputMap::DeinitialiseClass ( )
static

Definition at line 11 of file AInputMap.cpp.

◆ GetClass()

Toshi::TClass * AInputMap::GetClass ( )
overridevirtual

Definition at line 11 of file AInputMap.cpp.

◆ GetClassStatic()

static __forceinline Toshi::TClass * AInputMap::GetClassStatic ( )
inlinestatic

Definition at line 99 of file AInputMap.h.

◆ GetCommandMap()

Toshi::T2Map< Toshi::TInputDevice::Doodad, AInputCommand > & AInputMap::GetCommandMap ( )
inline

Definition at line 110 of file AInputMap.h.

110{ return m_oDoodadToCommandMap; }

◆ GetName()

const Toshi::TPString8 & AInputMap::GetName ( ) const
inline

Definition at line 107 of file AInputMap.h.

107{ return m_Name; }

◆ InitialiseClass()

void AInputMap::InitialiseClass ( )
static

Definition at line 11 of file AInputMap.cpp.

◆ LoadFromProperties()

void AInputMap::LoadFromProperties ( const PBProperties & a_rProperties)

Definition at line 13 of file AInputMap.cpp.

14{
15 m_oDoodadToCommandMap.Clear();
16
17 auto pInputManager = AInputMapManager::GetSingleton();
18
19 for ( auto it = a_rProperties.Begin(); it != a_rProperties.End(); it++ )
20 {
21 auto eCommandCode = pInputManager->GetCommandCode( Toshi::TPString8( it->GetName().GetString() ) );
22 auto pArray = it->GetValue()->GetArray();
23
24 for ( TUINT i = 0; i < pArray->GetSize(); i++ )
25 {
26 auto pValue = pArray->GetValue( i );
27 auto iDoodad = pInputManager->GetDoodadFromKey( pValue->GetTPString8() );
28
29 m_oDoodadToCommandMap.Insert( iDoodad, eCommandCode );
30 }
31 }
32}
unsigned int TUINT
Definition Typedefs.h:8
PBProperty * Begin()
PBProperty * End()

Member Data Documentation

◆ ms_oClass

Toshi::TClass AInputMap::ms_oClass = Toshi::TClass( "AInputMap", AInputMap::PARENTCLASS, AInputMap::CreateTObject, AInputMap::CreateTObjectInPlace, AInputMap::InitialiseClass, AInputMap::DeinitialiseClass, 0, 1, sizeof( AInputMap ), alignof( AInputMap ) )
static

Definition at line 99 of file AInputMap.h.

◆ PARENTCLASS

Toshi::TClass* AInputMap::PARENTCLASS = & Toshi::TObject::ms_oClass
staticconstexpr

Definition at line 99 of file AInputMap.h.


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