summaryrefslogtreecommitdiffstats
path: root/examples/CMakeLists.txt
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2020-02-15 11:19:27 +0100
committerSven Gothel <[email protected]>2020-02-15 11:19:27 +0100
commitcdaf51206a95494d8de43fd5461313efff6badd7 (patch)
treee9996bd1de60a844cf800fb15e7c82728acf1386 /examples/CMakeLists.txt
parent3fed423e2c81232bef6a3916b924996df1ff046e (diff)
C++ tinyb_hci: Working HCIScanner showing AD packets, demonstrating new HCI classes
See scripts/build-x86_64.sh and README.md for build instructions. See scripts/run-hci_scanner.sh to start new HCI scanner (C++). New HCI C++ implementation redised in libtinyb_hci.so w/o GLIB/DBus dependencies, but 'libbluetooth.so' dependency. Following Class datastructures are complete: - HCIUtil: Exception types, uint128_t and endian conversions - General UUID interface and its efficient UUID16, UUID32 + UUID128 implementation. Conversion 'toString', respecting endianess, and UUID* -> UUID128 conversion. Requird member comparison operations due to using interface - HCIAdapter with its opened HCISession, as well as its discovered HCIDevices - HCIAdapter discover includes multiple advertising AD records, up to 25 according to the spec. - HCIAdapter parses full AD segment. TODO: Handle few more AD types API/Impl Details: - Datastructures utilize 'vector<shares_ptr<T>>' collections. - Most attributes are specified 'const' -> immutable for efficancy - Convenient collection access member operations - etc .. RESULTS: - Fast AD scanning of multiple devices w/ UUID and RSSI - Proper integration into tinyb project TODO: - Handle few more AD types - Test multiple parallel HCISession from HCIAdapter - HCIAdapter.connect() - Represent GATT Service, Characteristics and Description - Catch up with the Java binding step by step
Diffstat (limited to 'examples/CMakeLists.txt')
-rw-r--r--examples/CMakeLists.txt7
1 files changed, 7 insertions, 0 deletions
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 52352bdc..16bfcc00 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -40,6 +40,11 @@ set_target_properties(list_mfg
PROPERTIES
CXX_STANDARD 11)
+add_executable (hci_scanner HCIScanner.cpp)
+set_target_properties(list_mfg
+ PROPERTIES
+ CXX_STANDARD 11)
+
include_directories(${PROJECT_SOURCE_DIR}/api)
target_link_libraries (hellotinyb tinyb)
@@ -49,3 +54,5 @@ target_link_libraries (esstinyb tinyb)
target_link_libraries (notifications tinyb)
target_link_libraries (uuid tinyb)
target_link_libraries (list_mfg tinyb)
+target_link_libraries (hci_scanner tinyb_hci)
+