simplersble 1.1.1-dev29

The all-in-one Bluetooth library that makes it easy to add wireless connectivity to your projects.
Documentation
#pragma once

#include <memory>
#include <set>
#include <vector>

#include <simpleble/Types.h>
#include <simpleble/local/Characteristic.h>

namespace SimpleBLE::Local {

class CharacteristicBase;

class ServiceBase {
  public:
    virtual ~ServiceBase() = default;

    virtual BluetoothUUID uuid() = 0;

    virtual std::shared_ptr<CharacteristicBase> add_characteristic(
        BluetoothUUID uuid, std::set<CharacteristicCapability> capabilities) = 0;
    virtual std::vector<std::shared_ptr<CharacteristicBase>> characteristics() = 0;

  protected:
    ServiceBase() = default;
};

}  // namespace SimpleBLE::Local