7 #include <Poco/SharedPtr.h>
8 #include <Poco/Timespan.h>
10 #include "bluetooth/HciConnection.h"
11 #include "bluetooth/HciInfo.h"
12 #include "net/MACAddress.h"
18 typedef Poco::SharedPtr<HciInterface> Ptr;
19 typedef std::function<void(const MACAddress&, std::vector<unsigned char>&)> WatchCallback;
28 virtual void up()
const = 0;
34 virtual void reset()
const = 0;
48 virtual std::map<MACAddress, std::string>
scan()
const = 0;
56 virtual std::map<MACAddress, std::string>
lescan(
57 const Poco::Timespan &seconds)
const = 0;
68 virtual HciConnection::Ptr
connect(
70 const Poco::Timespan& timeout)
const = 0;
79 Poco::SharedPtr<WatchCallback> callBack) = 0;
89 typedef Poco::SharedPtr<HciInterfaceManager> Ptr;
93 virtual HciInterface::Ptr lookup(
const std::string &name) = 0;
virtual HciConnection::Ptr connect(const MACAddress &address, const Poco::Timespan &timeout) const =0
Definition: HciInterface.h:87
virtual HciInfo info() const =0
virtual std::map< MACAddress, std::string > lescan(const Poco::Timespan &seconds) const =0
virtual std::map< MACAddress, std::string > scan() const =0
virtual void up() const =0
virtual void watch(const MACAddress &address, Poco::SharedPtr< WatchCallback > callBack)=0
Definition: MACAddress.h:8
virtual bool detect(const MACAddress &address) const =0
virtual void reset() const =0
virtual void unwatch(const MACAddress &address)=0
Definition: HciInterface.h:16