Files
nuki_hub/lib/BleScanner/src/BleInterfaces.h

32 lines
659 B
C++

#pragma once
/**
* @file BleInterfaces.h
*
* Created: 2022
* License: GNU GENERAL PUBLIC LICENSE (see LICENSE)
*
* This library provides a BLE scanner to be used by other libraries to
* receive advertisements from BLE devices
*
*/
#include <NimBLEDevice.h>
namespace BleScanner {
class Subscriber {
public:
virtual void onResult(const NimBLEAdvertisedDevice* advertisedDevice) = 0;
};
class Publisher {
public:
virtual void subscribe(Subscriber* subscriber) = 0;
virtual void unsubscribe(Subscriber* subscriber) = 0;
virtual void enableScanning(bool enable) = 0;
};
} // namespace BleScanner