esp-nimble-cpp  1.3.2
NimBLEUUID.h
1 /*
2  * NimBLEUUID.h
3  *
4  * Created: on Jan 24 2020
5  * Author H2zero
6  *
7  * Originally:
8  *
9  * BLEUUID.h
10  *
11  * Created on: Jun 21, 2017
12  * Author: kolban
13  */
14 
15 #ifndef COMPONENTS_NIMBLEUUID_H_
16 #define COMPONENTS_NIMBLEUUID_H_
17 
18 #include "nimconfig.h"
19 #if defined(CONFIG_BT_ENABLED)
20 
21 #if defined(CONFIG_NIMBLE_CPP_IDF)
22 #include "host/ble_uuid.h"
23 #else
24 #include "nimble/nimble/host/include/host/ble_uuid.h"
25 #endif
26 
27 /**** FIX COMPILATION ****/
28 #undef min
29 #undef max
30 /**************************/
31 
32 #include <string>
33 
37 class NimBLEUUID {
38 public:
39  NimBLEUUID(const std::string &uuid);
40  NimBLEUUID(uint16_t uuid);
41  NimBLEUUID(uint32_t uuid);
42  NimBLEUUID(const ble_uuid128_t* uuid);
43  NimBLEUUID(const uint8_t* pData, size_t size, bool msbFirst);
44  NimBLEUUID(uint32_t first, uint16_t second, uint16_t third, uint64_t fourth);
45  NimBLEUUID();
46 
47  uint8_t bitSize() const;
48  bool equals(const NimBLEUUID &uuid) const;
49  const ble_uuid_any_t* getNative() const;
50  const NimBLEUUID & to128();
51  std::string toString() const;
52  static NimBLEUUID fromString(const std::string &uuid);
53 
54  bool operator ==(const NimBLEUUID & rhs) const;
55  bool operator !=(const NimBLEUUID & rhs) const;
56  operator std::string() const;
57 
58 private:
59  ble_uuid_any_t m_uuid;
60  bool m_valueSet = false;
61 }; // NimBLEUUID
62 #endif /* CONFIG_BT_ENABLED */
63 #endif /* COMPONENTS_NIMBLEUUID_H_ */
A model of a BLE UUID.
Definition: NimBLEUUID.h:37
bool equals(const NimBLEUUID &uuid) const
Compare a UUID against this UUID.
Definition: NimBLEUUID.cpp:187
bool operator==(const NimBLEUUID &rhs) const
Convienience operator to check if this UUID is equal to another.
Definition: NimBLEUUID.cpp:279
const ble_uuid_any_t * getNative() const
Get the native UUID value.
Definition: NimBLEUUID.cpp:227
const NimBLEUUID & to128()
Convert a UUID to its 128 bit representation.
Definition: NimBLEUUID.cpp:242
std::string toString() const
Get a string representation of the UUID.
Definition: NimBLEUUID.cpp:271
NimBLEUUID()
Creates an empty UUID.
Definition: NimBLEUUID.cpp:166
bool operator!=(const NimBLEUUID &rhs) const
Convienience operator to check if this UUID is not equal to another.
Definition: NimBLEUUID.cpp:318
static NimBLEUUID fromString(const std::string &uuid)
Definition: NimBLEUUID.cpp:203
uint8_t bitSize() const
Get the number of bits in this uuid.
Definition: NimBLEUUID.cpp:175