kodi
PeripheralBusUSBLibUdev.h
1 /*
2  * Copyright (C) 2005-2018 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "peripherals/bus/PeripheralBus.h"
12 #include "peripherals/devices/Peripheral.h"
13 
14 struct udev;
15 struct udev_monitor;
16 
17 namespace PERIPHERALS
18 {
19  class CPeripherals;
20 
21  class CPeripheralBusUSB : public CPeripheralBus
22  {
23  public:
24  explicit CPeripheralBusUSB(CPeripherals& manager);
25  ~CPeripheralBusUSB(void) override;
26 
27  void Clear(void) override;
28 
32  bool PerformDeviceScan(PeripheralScanResults &results) override;
33 
34  protected:
35  static PeripheralType GetType(int iDeviceClass);
36 
37  void Process(void) override;
38  bool WaitForUpdate(void);
39 
40  struct udev * m_udev;
41  struct udev_monitor *m_udevMon;
42  };
43 }
void Clear(void) override
Stop the polling thread and clear all known devices on this bus.
Definition: PeripheralBusUSBLibUdev.cpp:211
bool PerformDeviceScan(PeripheralScanResults &results) override
Definition: PeripheralBusUSB.cpp:73
Definition: RetroPlayerInput.h:15