xbmc
Public Types | Public Member Functions | List of all members
KODI::GAME::CGameClientInput Class Reference
Inheritance diagram for KODI::GAME::CGameClientInput:
Inheritance graph
[legend]
Collaboration diagram for KODI::GAME::CGameClientInput:
Collaboration graph
[legend]

Public Types

using PortAddress = std::string
 
using JoystickMap = std::map< PortAddress, std::shared_ptr< CGameClientJoystick > >
 

Public Member Functions

 CGameClientInput (CGameClient &gameClient, AddonInstance_Game &addonStruct, CCriticalSection &clientAccess)
 
void Initialize ()
 
void Deinitialize ()
 
void Start (IGameInputCallback *input)
 
void Stop ()
 
bool HasFeature (const std::string &controllerId, const std::string &featureName) const
 
bool AcceptsInput () const
 
bool InputEvent (const game_input_event &event)
 
const CControllerTreeGetDefaultControllerTree () const
 
const CControllerTreeGetActiveControllerTree () const
 
bool SupportsKeyboard () const
 
bool SupportsMouse () const
 
int GetPlayerLimit () const
 
bool ConnectController (const std::string &portAddress, const ControllerPtr &controller)
 
bool DisconnectController (const std::string &portAddress)
 
void SavePorts ()
 
void ResetPorts ()
 
const JoystickMap & GetJoystickMap () const
 
void CloseJoysticks (PERIPHERALS::EventLockHandlePtr &inputHandlingLock)
 
bool OpenKeyboard (const ControllerPtr &controller, const PERIPHERALS::PeripheralPtr &keyboard)
 
bool IsKeyboardOpen () const
 
void CloseKeyboard ()
 
bool OpenMouse (const ControllerPtr &controller, const PERIPHERALS::PeripheralPtr &mouse)
 
bool IsMouseOpen () const
 
void CloseMouse ()
 
bool HasAgent () const
 
void HardwareReset ()
 
bool ReceiveInputEvent (const game_input_event &eventStruct)
 
- Public Member Functions inherited from Observable
virtual Observableoperator= (const Observable &observable)
 
virtual void RegisterObserver (Observer *obs)
 Register an observer. More...
 
virtual void UnregisterObserver (Observer *obs)
 Unregister an observer. More...
 
virtual void NotifyObservers (const ObservableMessage message=ObservableMessageNone)
 Send a message to all observers when m_bObservableChanged is true. More...
 
virtual void SetChanged (bool bSetTo=true)
 Mark an observable changed. More...
 
virtual bool IsObserving (const Observer &obs) const
 Check whether this observable is being observed by an observer. More...
 

Additional Inherited Members

- Protected Member Functions inherited from KODI::GAME::CGameClientSubsystem
 CGameClientSubsystem (CGameClient &gameClient, AddonInstance_Game &addonStruct, CCriticalSection &clientAccess)
 
CGameClientCheevosCheevos () const
 
CGameClientInputInput () const
 
CGameClientPropertiesAddonProperties () const
 
CGameClientStreamsStreams () const
 
- Protected Member Functions inherited from Observable
void SendMessage (const ObservableMessage message)
 Send a message to all observer when m_bObservableChanged is true. More...
 
virtual Observableoperator= (const Observable &observable)
 
virtual void RegisterObserver (Observer *obs)
 Register an observer. More...
 
virtual void UnregisterObserver (Observer *obs)
 Unregister an observer. More...
 
virtual void NotifyObservers (const ObservableMessage message=ObservableMessageNone)
 Send a message to all observers when m_bObservableChanged is true. More...
 
virtual void SetChanged (bool bSetTo=true)
 Mark an observable changed. More...
 
virtual bool IsObserving (const Observer &obs) const
 Check whether this observable is being observed by an observer. More...
 
- Static Protected Member Functions inherited from KODI::GAME::CGameClientSubsystem
static GameClientSubsystems CreateSubsystems (CGameClient &gameClient, AddonInstance_Game &gameStruct, CCriticalSection &clientAccess)
 Create a struct with the allocated subsystems. More...
 
static void DestroySubsystems (GameClientSubsystems &subsystems)
 Deallocate subsystems. More...
 
- Protected Attributes inherited from KODI::GAME::CGameClientSubsystem
CGameClientm_gameClient
 
AddonInstance_Gamem_struct
 
CCriticalSection & m_clientAccess
 
- Protected Attributes inherited from Observable
std::atomic< bool > m_bObservableChanged {false}
 
std::vector< Observer * > m_observers
 
CCriticalSection m_obsCritSection
 

Member Typedef Documentation

◆ PortAddress

Todo:
de-duplicate

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