Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
PERIPHERALS::CPeripheralMouse Class Reference

#include <PeripheralMouse.h>

Inheritance diagram for PERIPHERALS::CPeripheralMouse:
PERIPHERALS::CPeripheral KODI::MOUSE::IMouseDriverHandler KODI::JOYSTICK::IInputProvider KODI::KEYBOARD::IKeyboardInputProvider KODI::MOUSE::IMouseInputProvider

Public Member Functions

 CPeripheralMouse (CPeripherals &manager, const PeripheralScanResult &scanResult, CPeripheralBus *bus)
 
 ~CPeripheralMouse (void) override
 
bool InitialiseFeature (const PeripheralFeature feature) override
 Initialise one of the features of this peripheral.
 
void RegisterMouseDriverHandler (KODI::MOUSE::IMouseDriverHandler *handler, bool bPromiscuous) override
 
void UnregisterMouseDriverHandler (KODI::MOUSE::IMouseDriverHandler *handler) override
 
CDateTime LastActive () const override
 Return the last time this peripheral was active.
 
KODI::GAME::ControllerPtr ControllerProfile () const override
 Get the controller profile that best represents this peripheral.
 
bool OnPosition (int x, int y) override
 Handle mouse position updates.
 
bool OnButtonPress (KODI::MOUSE::BUTTON_ID button) override
 A mouse button has been pressed.
 
void OnButtonRelease (KODI::MOUSE::BUTTON_ID button) override
 A mouse button has been released.
 
- Public Member Functions inherited from PERIPHERALS::CPeripheral
 CPeripheral (CPeripherals &manager, const PeripheralScanResult &scanResult, CPeripheralBus *bus)
 
 ~CPeripheral (void) override
 
bool operator== (const CPeripheral &right) const
 
bool operator!= (const CPeripheral &right) const
 
bool operator== (const PeripheralScanResult &right) const
 
bool operator!= (const PeripheralScanResult &right) const
 
const std::string & FileLocation (void) const
 
const std::string & Location (void) const
 
int VendorId (void) const
 
const char * VendorIdAsString (void) const
 
int ProductId (void) const
 
const char * ProductIdAsString (void) const
 
PeripheralType Type (void) const
 
PeripheralBusType GetBusType (void) const
 
const std::string & DeviceName (void) const
 
bool IsHidden (void) const
 
void SetHidden (bool bSetTo=true)
 
const std::string & GetVersionInfo (void) const
 
virtual std::string GetIcon () const
 Get an icon for this peripheral.
 
bool HasFeature (const PeripheralFeature feature) const
 Check whether this device has the given feature.
 
void GetFeatures (std::vector< PeripheralFeature > &features) const
 Get all features that are supported by this device.
 
bool Initialise (void)
 Initialises the peripheral.
 
virtual void OnUserNotification ()
 Briefly activate a feature to notify the user.
 
virtual bool TestFeature (PeripheralFeature feature)
 Briefly test one of the features of this peripheral.
 
virtual void OnSettingChanged (const std::string &strChangedSetting)
 Called when a setting changed.
 
virtual void OnDeviceRemoved (void)
 Called when this device is removed, before calling the destructor.
 
virtual void GetSubdevices (PeripheralVector &subDevices) const
 Get all subdevices if this device is multifunctional.
 
virtual bool IsMultiFunctional (void) const
 
virtual void AddSetting (const std::string &strKey, const std::shared_ptr< const CSetting > &setting, int order)
 Add a setting to this peripheral. This will overwrite a previous setting with the same key.
 
virtual bool HasSetting (const std::string &strKey) const
 Check whether a setting is known with the given key.
 
virtual bool HasSettings (void) const
 
virtual bool HasConfigurableSettings (void) const
 
virtual const std::string GetSettingString (const std::string &strKey) const
 Get the value of a setting.
 
virtual bool SetSetting (const std::string &strKey, const std::string &strValue)
 
virtual void SetSettingVisible (const std::string &strKey, bool bSetTo)
 
virtual bool IsSettingVisible (const std::string &strKey) const
 
virtual int GetSettingInt (const std::string &strKey) const
 
virtual bool SetSetting (const std::string &strKey, int iValue)
 
virtual bool GetSettingBool (const std::string &strKey) const
 
virtual bool SetSetting (const std::string &strKey, bool bValue)
 
virtual float GetSettingFloat (const std::string &strKey) const
 
virtual bool SetSetting (const std::string &strKey, float fValue)
 
virtual void PersistSettings (bool bExiting=false)
 
virtual void LoadPersistedSettings (void)
 
virtual void ResetDefaultSettings (void)
 
virtual std::vector< std::shared_ptr< CSetting > > GetSettings (void) const
 
virtual bool ErrorOccured (void) const
 
virtual void RegisterJoystickDriverHandler (KODI::JOYSTICK::IDriverHandler *handler, bool bPromiscuous)
 
virtual void UnregisterJoystickDriverHandler (KODI::JOYSTICK::IDriverHandler *handler)
 
virtual void RegisterKeyboardDriverHandler (KODI::KEYBOARD::IKeyboardDriverHandler *handler, bool bPromiscuous)
 
virtual void UnregisterKeyboardDriverHandler (KODI::KEYBOARD::IKeyboardDriverHandler *handler)
 
void RegisterInputHandler (KODI::JOYSTICK::IInputHandler *handler, bool bPromiscuous) override
 Register a handler for the provided input.
 
void UnregisterInputHandler (KODI::JOYSTICK::IInputHandler *handler) override
 Unregister a handler.
 
void RegisterKeyboardHandler (KODI::KEYBOARD::IKeyboardInputHandler *handler, bool bPromiscuous, bool forceDefaultMap) override
 Registers a handler to be called on keyboard input.
 
void UnregisterKeyboardHandler (KODI::KEYBOARD::IKeyboardInputHandler *handler) override
 Unregisters handler from keyboard input.
 
void RegisterMouseHandler (KODI::MOUSE::IMouseInputHandler *handler, bool bPromiscuous, bool forceDefaultMap) override
 Registers a handler to be called on mouse input.
 
void UnregisterMouseHandler (KODI::MOUSE::IMouseInputHandler *handler) override
 Unregisters handler from mouse input.
 
virtual void RegisterJoystickButtonMapper (KODI::JOYSTICK::IButtonMapper *mapper)
 
virtual void UnregisterJoystickButtonMapper (KODI::JOYSTICK::IButtonMapper *mapper)
 
virtual KODI::JOYSTICK::IDriverReceiverGetDriverReceiver ()
 
virtual KODI::KEYMAP::IKeymapGetKeymap (const std::string &controllerId)
 
virtual void SetControllerProfile (const KODI::GAME::ControllerPtr &controller)
 Set the controller profile for this peripheral.
 
- Public Member Functions inherited from KODI::JOYSTICK::IInputProvider
virtual ~IInputProvider ()=default
 
- Public Member Functions inherited from KODI::KEYBOARD::IKeyboardInputProvider
virtual ~IKeyboardInputProvider ()=default
 
- Public Member Functions inherited from KODI::MOUSE::IMouseInputProvider
virtual ~IMouseInputProvider ()=default
 
- Public Member Functions inherited from KODI::MOUSE::IMouseDriverHandler
virtual ~IMouseDriverHandler (void)=default
 

Additional Inherited Members

- Protected Member Functions inherited from PERIPHERALS::CPeripheral
virtual void ClearSettings (void)
 
- Protected Attributes inherited from PERIPHERALS::CPeripheral
CPeripheralsm_manager
 
PeripheralType m_type
 
PeripheralBusType m_busType
 
PeripheralBusType m_mappedBusType
 
std::string m_strLocation
 
std::string m_strDeviceName
 
std::string m_strSettingsFile
 
std::string m_strFileLocation
 
int m_iVendorId
 
std::string m_strVendorId
 
int m_iProductId
 
std::string m_strProductId
 
std::string m_strVersionInfo
 
bool m_bInitialised = false
 
bool m_bHidden = false
 
bool m_bError = false
 
std::vector< PeripheralFeaturem_features
 
PeripheralVector m_subDevices
 
std::map< std::string, PeripheralDeviceSettingm_settings
 
std::set< std::string > m_changedSettings
 
CPeripheralBusm_bus
 
std::map< KODI::JOYSTICK::IInputHandler *, std::unique_ptr< KODI::JOYSTICK::IDriverHandler > > m_inputHandlers
 
std::map< KODI::KEYBOARD::IKeyboardInputHandler *, std::unique_ptr< KODI::KEYBOARD::IKeyboardDriverHandler > > m_keyboardHandlers
 
std::map< KODI::MOUSE::IMouseInputHandler *, std::unique_ptr< KODI::MOUSE::IMouseDriverHandler > > m_mouseHandlers
 
std::map< KODI::JOYSTICK::IButtonMapper *, std::unique_ptr< CAddonButtonMapping > > m_buttonMappers
 
KODI::GAME::ControllerPtr m_controllerProfile
 

Constructor & Destructor Documentation

◆ CPeripheralMouse()

CPeripheralMouse::CPeripheralMouse ( CPeripherals & manager,
const PeripheralScanResult & scanResult,
CPeripheralBus * bus )

◆ ~CPeripheralMouse()

CPeripheralMouse::~CPeripheralMouse ( void )
override

Member Function Documentation

◆ ControllerProfile()

GAME::ControllerPtr CPeripheralMouse::ControllerProfile ( ) const
overridevirtual

Get the controller profile that best represents this peripheral.

Returns
The controller profile, or empty if unknown

Reimplemented from PERIPHERALS::CPeripheral.

◆ InitialiseFeature()

bool CPeripheralMouse::InitialiseFeature ( const PeripheralFeature feature)
overridevirtual

Initialise one of the features of this peripheral.

Parameters
featureThe feature to initialise.
Returns
True when the feature has been initialised successfully, false otherwise.

Reimplemented from PERIPHERALS::CPeripheral.

◆ LastActive()

CDateTime PERIPHERALS::CPeripheralMouse::LastActive ( ) const
inlineoverridevirtual

Return the last time this peripheral was active.

Returns
The time of last activation, or invalid if unknown/never active

Reimplemented from PERIPHERALS::CPeripheral.

◆ OnButtonPress()

bool CPeripheralMouse::OnButtonPress ( KODI::MOUSE::BUTTON_ID button)
overridevirtual

A mouse button has been pressed.

Parameters
buttonThe index of the pressed button
Returns
True if the event was handled, otherwise false

Implements KODI::MOUSE::IMouseDriverHandler.

◆ OnButtonRelease()

void CPeripheralMouse::OnButtonRelease ( KODI::MOUSE::BUTTON_ID button)
overridevirtual

A mouse button has been released.

Parameters
buttonThe index of the released button

Implements KODI::MOUSE::IMouseDriverHandler.

◆ OnPosition()

bool CPeripheralMouse::OnPosition ( int x,
int y )
overridevirtual

Handle mouse position updates.

Parameters
xThe new x coordinate of the pointer
yThe new y coordinate of the pointer

The mouse uses a left-handed (graphics) cartesian coordinate system. Positive X is right, positive Y is down.

Returns
True if the event was handled, false otherwise

Implements KODI::MOUSE::IMouseDriverHandler.

◆ RegisterMouseDriverHandler()

void CPeripheralMouse::RegisterMouseDriverHandler ( KODI::MOUSE::IMouseDriverHandler * handler,
bool bPromiscuous )
overridevirtual

Reimplemented from PERIPHERALS::CPeripheral.

◆ UnregisterMouseDriverHandler()

void CPeripheralMouse::UnregisterMouseDriverHandler ( KODI::MOUSE::IMouseDriverHandler * handler)
overridevirtual

Reimplemented from PERIPHERALS::CPeripheral.


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