Skip to content

Commit 59b7e3e

Browse files
committed
Add overload for NimBLEAdvertising::setManufacturerData.
Adds an overload for `NimBLEAdvertising::setManufacturerData` that takes a `const uint8_t*` and , size_t` paramter.
1 parent 3b951ca commit 59b7e3e

File tree

2 files changed

+13
-6
lines changed

2 files changed

+13
-6
lines changed

src/NimBLEAdvertising.cpp

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -155,23 +155,29 @@ void NimBLEAdvertising::setName(const std::string& name) {
155155
/**
156156
* @brief Set the advertised manufacturer data.
157157
* @param [in] data The data to advertise.
158+
* @param [in] length The length of the data.
158159
*/
159-
void NimBLEAdvertising::setManufacturerData(const std::string& data) {
160-
std::vector<uint8_t>(data.begin(), data.end()).swap(m_mfgData);
160+
void NimBLEAdvertising::setManufacturerData(const uint8_t* data, size_t length) {
161+
std::vector<uint8_t>(data, data + length).swap(m_mfgData);
161162
m_advData.mfg_data = &m_mfgData[0];
162163
m_advData.mfg_data_len = m_mfgData.size();
163164
m_advDataSet = false;
164165
} // setManufacturerData
165166

167+
/**
168+
* @brief Set the advertised manufacturer data.
169+
* @param [in] data The data to advertise.
170+
*/
171+
void NimBLEAdvertising::setManufacturerData(const std::string& data) {
172+
setManufacturerData(reinterpret_cast<const uint8_t*>(data.data()), data.length());
173+
} // setManufacturerData
174+
166175
/**
167176
* @brief Set the advertised manufacturer data.
168177
* @param [in] data The data to advertise.
169178
*/
170179
void NimBLEAdvertising::setManufacturerData(const std::vector<uint8_t>& data) {
171-
std::vector<uint8_t>(data.begin(), data.end()).swap(m_mfgData);
172-
m_advData.mfg_data = &m_mfgData[0];
173-
m_advData.mfg_data_len = m_mfgData.size();
174-
m_advDataSet = false;
180+
setManufacturerData(&data[0], data.size());
175181
} // setManufacturerData
176182

177183
/**

src/NimBLEAdvertising.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ class NimBLEAdvertising {
9494
bool stop();
9595
void setAppearance(uint16_t appearance);
9696
void setName(const std::string& name);
97+
void setManufacturerData(const uint8_t* data, size_t length);
9798
void setManufacturerData(const std::string& data);
9899
void setManufacturerData(const std::vector<uint8_t>& data);
99100
void setURI(const std::string& uri);

0 commit comments

Comments
 (0)