ESPHome 2026.1.0-dev
Loading...
Searching...
No Matches
ble_uuid.h
Go to the documentation of this file.
1#pragma once
2
4#include "esphome/core/hal.h"
6
7#ifdef USE_ESP32
8#ifdef USE_ESP32_BLE_UUID
9
10#include <span>
11#include <string>
12#include <esp_bt_defs.h>
13
14namespace esphome::esp32_ble {
15
17static constexpr size_t UUID_STR_LEN = 37;
18
19class ESPBTUUID {
20 public:
21 ESPBTUUID();
22
23 static ESPBTUUID from_uint16(uint16_t uuid);
24
25 static ESPBTUUID from_uint32(uint32_t uuid);
26
27 static ESPBTUUID from_raw(const uint8_t *data);
28 static ESPBTUUID from_raw_reversed(const uint8_t *data);
29
30 static ESPBTUUID from_raw(const std::string &data);
31
32 static ESPBTUUID from_uuid(esp_bt_uuid_t uuid);
33
34 ESPBTUUID as_128bit() const;
35
36 bool contains(uint8_t data1, uint8_t data2) const;
37
38 bool operator==(const ESPBTUUID &uuid) const;
39 bool operator!=(const ESPBTUUID &uuid) const { return !(*this == uuid); }
40
41 esp_bt_uuid_t get_uuid() const;
42
43 std::string to_string() const;
44 void to_str(std::span<char, UUID_STR_LEN> output) const;
45
46 protected:
47 esp_bt_uuid_t uuid_;
48};
49
50} // namespace esphome::esp32_ble
51
52#endif // USE_ESP32_BLE_UUID
53#endif // USE_ESP32
bool operator!=(const ESPBTUUID &uuid) const
Definition ble_uuid.h:39
std::string to_string() const
Definition ble_uuid.cpp:184
void to_str(std::span< char, UUID_STR_LEN > output) const
Definition ble_uuid.cpp:146
static ESPBTUUID from_uuid(esp_bt_uuid_t uuid)
Definition ble_uuid.cpp:84
static ESPBTUUID from_uint32(uint32_t uuid)
Definition ble_uuid.cpp:23
static ESPBTUUID from_uint16(uint16_t uuid)
Definition ble_uuid.cpp:17
bool operator==(const ESPBTUUID &uuid) const
Definition ble_uuid.cpp:130
static ESPBTUUID from_raw(const uint8_t *data)
Definition ble_uuid.cpp:29
static ESPBTUUID from_raw_reversed(const uint8_t *data)
Definition ble_uuid.cpp:35
esp_bt_uuid_t get_uuid() const
Definition ble_uuid.cpp:145
ESPBTUUID as_128bit() const
Definition ble_uuid.cpp:96
bool contains(uint8_t data1, uint8_t data2) const
Definition ble_uuid.cpp:112