2015-04-19 22:52:45 +00:00
|
|
|
#ifndef IHIDLISTENER_HPP
|
|
|
|
#define IHIDLISTENER_HPP
|
|
|
|
|
2015-04-21 04:02:43 +00:00
|
|
|
#include <map>
|
|
|
|
#include <mutex>
|
|
|
|
#include "CDeviceToken.hpp"
|
|
|
|
typedef std::map<TDeviceHandle, CDeviceToken> TDeviceTokens;
|
2015-04-22 21:48:23 +00:00
|
|
|
typedef std::pair<TDeviceTokens::iterator, bool> TInsertedDeviceToken;
|
2015-04-21 04:02:43 +00:00
|
|
|
class CDeviceFinder;
|
|
|
|
|
2015-04-19 22:52:45 +00:00
|
|
|
class IHIDListener
|
|
|
|
{
|
2015-04-21 04:02:43 +00:00
|
|
|
public:
|
|
|
|
virtual ~IHIDListener() {};
|
|
|
|
|
|
|
|
/* Automatic device scanning */
|
|
|
|
virtual bool startScanning()=0;
|
|
|
|
virtual bool stopScanning()=0;
|
|
|
|
|
|
|
|
/* Manual device scanning */
|
|
|
|
virtual bool scanNow()=0;
|
2015-04-19 22:52:45 +00:00
|
|
|
|
|
|
|
};
|
|
|
|
|
2015-04-21 04:02:43 +00:00
|
|
|
/* Platform-specific constructor */
|
|
|
|
IHIDListener* IHIDListenerNew(CDeviceFinder& finder);
|
|
|
|
|
2015-04-19 22:52:45 +00:00
|
|
|
#endif // IHIDLISTENER_HPP
|