summaryrefslogtreecommitdiff
path: root/sensor/patchedBLE/src/BLEEddystoneURL.h
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2019-02-22 12:39:08 +0000
committerdakkar <dakkar@thenautilus.net>2019-02-22 12:39:08 +0000
commit67a9dbb8e33e2bbb785e6a16a6ce5837c1a46c97 (patch)
tree0f5b064f03372305369a41b10e157aa89552e2f0 /sensor/patchedBLE/src/BLEEddystoneURL.h
parentuni-init BLE before sleeping (diff)
parentMerge pull request #23 from tatsutaigu/master (diff)
downloadthermostat-67a9dbb8e33e2bbb785e6a16a6ce5837c1a46c97.tar.gz
thermostat-67a9dbb8e33e2bbb785e6a16a6ce5837c1a46c97.tar.bz2
thermostat-67a9dbb8e33e2bbb785e6a16a6ce5837c1a46c97.zip
Merge commit 'b232e7f5f0e87f36afbc2f4e03a2c49c48dd47bc'
Diffstat (limited to 'sensor/patchedBLE/src/BLEEddystoneURL.h')
-rw-r--r--sensor/patchedBLE/src/BLEEddystoneURL.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/sensor/patchedBLE/src/BLEEddystoneURL.h b/sensor/patchedBLE/src/BLEEddystoneURL.h
new file mode 100644
index 0000000..0b538c0
--- /dev/null
+++ b/sensor/patchedBLE/src/BLEEddystoneURL.h
@@ -0,0 +1,43 @@
+/*
+ * BLEEddystoneURL.cpp
+ *
+ * Created on: Mar 12, 2018
+ * Author: pcbreflux
+ */
+
+#ifndef _BLEEddystoneURL_H_
+#define _BLEEddystoneURL_H_
+#include "BLEUUID.h"
+
+#define EDDYSTONE_URL_FRAME_TYPE 0x10
+
+/**
+ * @brief Representation of a beacon.
+ * See:
+ * * https://github.com/google/eddystone
+ */
+class BLEEddystoneURL {
+public:
+ BLEEddystoneURL();
+ std::string getData();
+ BLEUUID getUUID();
+ int8_t getPower();
+ std::string getURL();
+ std::string getDecodedURL();
+ void setData(std::string data);
+ void setUUID(BLEUUID l_uuid);
+ void setPower(int8_t advertisedTxPower);
+ void setURL(std::string url);
+
+private:
+ uint16_t beaconUUID;
+ uint8_t lengthURL;
+ struct {
+ uint8_t frameType;
+ int8_t advertisedTxPower;
+ uint8_t url[16];
+ } __attribute__((packed)) m_eddystoneData;
+
+}; // BLEEddystoneURL
+
+#endif /* _BLEEddystoneURL_H_ */