Collection of 'Extended Advertising Data' (EAD), 'Advertising Data' (AD) or 'Extended Inquiry Response' (EIR) information.
More...
|
| EInfoReport () noexcept |
|
| EInfoReport (const EInfoReport &)=default |
|
void | addFlags (GAPFlags f) noexcept |
|
bool | addService (const jau::uuid_t &uuid) noexcept |
|
bool | addService (const std::shared_ptr< const jau::uuid_t > &uuid) noexcept |
|
void | clear () noexcept |
| Reset all data fields. More...
|
|
std::string | eirDataMaskToString () const noexcept |
|
ssize_type | findService (const jau::uuid_t &uuid) const noexcept |
|
uint8_t | getADAddressType () const noexcept |
|
jau::EUI48 const & | getAddress () const noexcept |
|
BDAddressType | getAddressType () const noexcept |
|
AppearanceCat | getAppearance () const noexcept |
|
void | getConnInterval (uint16_t &min, uint16_t &max) const noexcept |
| Get slave connection interval range. More...
|
|
uint32_t | getDeviceClass () const noexcept |
|
void | getDeviceID (uint16_t &source_, uint16_t &vendor_, uint16_t &product_, uint16_t &version_) const noexcept |
|
std::string | getDeviceIDModalias () const noexcept |
|
uint16_t | getDeviceIDProduct () const noexcept |
|
uint16_t | getDeviceIDSource () const noexcept |
|
uint16_t | getDeviceIDVendor () const noexcept |
|
uint16_t | getDeviceIDVersion () const noexcept |
|
EIRDataType | getEIRDataMask () const noexcept |
|
AD_PDU_Type | getEvtType () const noexcept |
|
EAD_Event_Type | getExtEvtType () const noexcept |
|
GAPFlags | getFlags () const noexcept |
|
const jau::TROOctets & | getHash () const noexcept |
|
std::shared_ptr< ManufactureSpecificData > | getManufactureSpecificData () const noexcept |
|
std::string const & | getName () const noexcept |
|
const jau::TROOctets & | getRandomizer () const noexcept |
|
int8_t | getRSSI () const noexcept |
|
const jau::darray< std::shared_ptr< const jau::uuid_t > > & | getServices () const noexcept |
|
bool | getServicesComplete () const noexcept |
|
std::string const & | getShortName () const noexcept |
|
Source | getSource () const noexcept |
|
bool | getSourceExt () const noexcept |
|
uint64_t | getTimestamp () const noexcept |
|
int8_t | getTxPower () const noexcept |
|
bool | isSet (EIRDataType bit) const noexcept |
|
bool | operator!= (const EInfoReport &o) const noexcept |
|
EInfoReport & | operator= (const EInfoReport &o)=default |
|
bool | operator== (const EInfoReport &o) const noexcept |
|
int | read_data (uint8_t const *data, uint8_t const data_length) noexcept |
| Reads the Extended Inquiry Response (EIR) or (Extended) Advertising Data (EAD or AD) segments and returns the number of parsed data segments;. More...
|
|
EIRDataType | set (const EInfoReport &eir) noexcept |
| Merge all fields from given EInfoReport if set and different. More...
|
|
void | setAddress (jau::EUI48 const &a) noexcept |
|
void | setAddressType (BDAddressType at) noexcept |
|
void | setAppearance (AppearanceCat a) noexcept |
|
void | setConnInterval (const uint16_t min, const uint16_t max) noexcept |
| Set slave connection interval range. More...
|
|
void | setDeviceClass (uint32_t c) noexcept |
|
void | setDeviceID (const uint16_t source, const uint16_t vendor, const uint16_t product, const uint16_t version) noexcept |
|
void | setEvtType (AD_PDU_Type et) noexcept |
|
void | setExtEvtType (EAD_Event_Type eadt) noexcept |
|
void | setFlags (GAPFlags f) noexcept |
|
void | setHash (const uint8_t *h) noexcept |
|
void | setManufactureSpecificData (const ManufactureSpecificData &msd_) |
|
void | setName (const std::string &name_) noexcept |
|
void | setRandomizer (const uint8_t *r) noexcept |
|
void | setRSSI (int8_t v) noexcept |
|
void | setServicesComplete (const bool v) noexcept |
|
void | setShortName (const std::string &name_short_) noexcept |
|
void | setSource (Source s, bool ext) noexcept |
|
void | setTimestamp (uint64_t ts) noexcept |
|
void | setTxPower (int8_t v) noexcept |
|
std::string | toString (const bool includeServices=true) const noexcept |
|
jau::nsize_t | write_data (EIRDataType write_mask, uint8_t *data, jau::nsize_t const data_length) const noexcept |
| Writes the Extended Inquiry Response (EIR) or (Extended) Advertising Data (EAD or AD) segments of existing EIRDataType of this instance into the given data up to data_length . More...
|
|
Collection of 'Extended Advertising Data' (EAD), 'Advertising Data' (AD) or 'Extended Inquiry Response' (EIR) information.
References:
- BT Core Spec v5.2: Vol 4, Part E, 7.7.65.2 LE Advertising Report event
- BT Core Spec v5.2: Vol 4, Part E, 7.7.65.13 LE Extended Advertising Report event
- BT Core Spec v5.2: Vol 3, Part C, 11 ADVERTISING AND SCAN RESPONSE DATA FORMAT
- BT Core Spec v5.2: Vol 3, Part C, 8 EXTENDED INQUIRY RESPONSE DATA FORMAT
- BT Core Spec Supplement v9, Part A: Section 1 + 2 Examples, p25..
- Assigned Numbers - Generic Access Profile
- Examples
- dbt_peripheral00.cpp, and dbt_repeater00.cpp.
Definition at line 898 of file BTTypes0.hpp.
Reads a complete Advertising Data (AD) Report and returns the number of AD reports in form of a sharable list of EInfoReport;.
BT Core Spec v5.2: Vol 4, Part E, 7.7.65.2 LE Advertising Report event
BT Core Spec v5.2: Vol 3, Part C, 11 ADVERTISING AND SCAN RESPONSE DATA FORMAT
BT Core Spec v5.2: Vol 3, Part C, 8 EXTENDED INQUIRY RESPONSE DATA FORMAT
https://www.bluetooth.com/specifications/archived-specifications/
*/
static jau::darray<std::unique_ptr<EInfoReport>> read_ad_reports(uint8_t const * data, jau::nsize_t const data_length) noexcept;
/**
Reads a complete Extended Advertising Data (AD) Report
and returns the number of AD reports in form of a sharable list of EInfoReport;
BT Core Spec v5.2: Vol 4, Part E, 7.7.65.13 LE Extended Advertising Report event
BT Core Spec v5.2: Vol 3, Part C, 11 ADVERTISING AND SCAN RESPONSE DATA FORMAT
BT Core Spec v5.2: Vol 3, Part C, 8 EXTENDED INQUIRY RESPONSE DATA FORMAT
https://www.bluetooth.com/specifications/archived-specifications/
Definition at line 1435 of file BTTypes0.cpp.
Writes the Extended Inquiry Response (EIR) or (Extended) Advertising Data (EAD or AD) segments of existing EIRDataType of this instance into the given data
up to data_length
.
Only fields in the given EIRDataType write_mask
and getEIRDataMask() will be written, hence write_mask
allows to select the fields to be written/advertised.
Usually only up to 31 bytes are supported to be advertised, i.e. data_length
may be lower or equal 31.
Elements exceeding the data_length
will be cut off.
References:
- BT Core Spec v5.2: Vol 3, Part C, 11 ADVERTISING AND SCAN RESPONSE DATA FORMAT
- BT Core Spec v5.2: Vol 3, Part C, 8 EXTENDED INQUIRY RESPONSE DATA FORMAT
- BT Core Spec Supplement v9, Part A: Section 1 + 2 Examples, p25..
- Assigned Numbers - Generic Access Profile
- Parameters
-
write_mask | EIRDataType selection mask |
data | destination |
data_length | destination length |
- Returns
- number of bytes written
- See also
- read_data()
Definition at line 1149 of file BTTypes0.cpp.