Skip to content

Commit 44b2e73

Browse files
paul-szczepanek-armpan-
authored andcommitted
Add setters to events
1 parent df17942 commit 44b2e73

File tree

1 file changed

+67
-11
lines changed
  • connectivity/FEATURE_BLE/include/ble/gap

1 file changed

+67
-11
lines changed

connectivity/FEATURE_BLE/include/ble/gap/Events.h

Lines changed: 67 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -69,23 +69,22 @@ struct AdvertisingReportEvent {
6969
const address_t &directAddress,
7070
const mbed::Span<const uint8_t> &advertisingData
7171
) :
72+
peerAddress(peerAddress),
7273
type(type),
7374
peerAddressType(peerAddressType),
74-
peerAddress(peerAddress),
7575
primaryPhy(primaryPhy),
7676
secondaryPhy(secondaryPhy),
7777
SID(SID),
7878
txPower(txPower),
79-
rssi(rssi),
8079
periodicInterval(periodicInterval),
80+
rssi(rssi),
8181
directAddressType(directAddressType),
8282
directAddress(directAddress),
8383
advertisingData(advertisingData)
8484
{
8585
}
8686

8787
#endif
88-
8988
/** Get event type. */
9089
const advertising_event_t &getType() const
9190
{
@@ -163,18 +162,44 @@ struct AdvertisingReportEvent {
163162
return advertisingData;
164163
}
165164

165+
/** Set peer address. */
166+
void setPeerAddress(
167+
const address_t &newPeerAddress
168+
)
169+
{
170+
peerAddress = newPeerAddress;
171+
}
172+
173+
174+
/** Set peer address type. */
175+
void setPeerAddressType(
176+
const peer_address_type_t &newPeerAddressType
177+
)
178+
{
179+
peerAddressType = newPeerAddressType;
180+
}
181+
182+
/** Set new advertising payload. */
183+
void setAdvertisingData(
184+
const mbed::Span<const uint8_t> &newAdvertisingData
185+
)
186+
{
187+
advertisingData = newAdvertisingData;
188+
}
189+
166190
private:
191+
address_t peerAddress;
167192
advertising_event_t type;
168193
peer_address_type_t peerAddressType;
169-
address_t const &peerAddress;
170194
phy_t primaryPhy;
171195
phy_t secondaryPhy;
172196
advertising_sid_t SID;
173197
advertising_power_t txPower;
174-
rssi_t rssi;
175198
uint16_t periodicInterval;
199+
rssi_t rssi;
176200
peer_address_type_t directAddressType;
177-
const address_t &directAddress;
201+
address_t directAddress;
202+
ble_error_t status;
178203
mbed::Span<const uint8_t> advertisingData;
179204
};
180205

@@ -215,12 +240,12 @@ struct ConnectionCompleteEvent {
215240
) :
216241
status(status),
217242
connectionHandle(connectionHandle),
243+
peerAddress(peerAddress),
218244
ownRole(ownRole),
219245
peerAddressType(peerAddressType),
220-
peerAddress(peerAddress),
221246
localResolvablePrivateAddress(localResolvablePrivateAddress),
222-
peerResolvablePrivateAddress(peerResolvablePrivateAddress),
223247
connectionInterval(connectionInterval),
248+
peerResolvablePrivateAddress(peerResolvablePrivateAddress),
224249
connectionLatency(connectionLatency),
225250
supervisionTimeout(supervisionTimeout),
226251
masterClockAccuracy(masterClockAccuracy)
@@ -295,15 +320,46 @@ struct ConnectionCompleteEvent {
295320
return masterClockAccuracy;
296321
}
297322

323+
324+
/** Set connection complete event status. */
325+
void setStatus(ble_error_t new_status)
326+
{
327+
status = new_status;
328+
}
329+
330+
/** Set peer address type. */
331+
void setPeerAddressType(const peer_address_type_t& address_type)
332+
{
333+
peerAddressType = address_type;
334+
}
335+
336+
/** Set peer address. */
337+
void setPeerAddress(const address_t &address)
338+
{
339+
peerAddress = address;
340+
}
341+
342+
/** Set get local resolvable random address if privacy is used. */
343+
void setLocalResolvablePrivateAddress(const address_t &address)
344+
{
345+
localResolvablePrivateAddress = address;
346+
}
347+
348+
/** Set peer resolvable private address if privacy is used. */
349+
void setPeerResolvablePrivateAddress(const address_t &address)
350+
{
351+
peerResolvablePrivateAddress = address;
352+
}
353+
298354
private:
299355
ble_error_t status;
300356
connection_handle_t connectionHandle;
357+
address_t peerAddress;
301358
connection_role_t ownRole;
302359
peer_address_type_t peerAddressType;
303-
const address_t &peerAddress;
304-
const address_t &localResolvablePrivateAddress;
305-
const address_t &peerResolvablePrivateAddress;
360+
address_t localResolvablePrivateAddress;
306361
conn_interval_t connectionInterval;
362+
address_t peerResolvablePrivateAddress;
307363
slave_latency_t connectionLatency;
308364
supervision_timeout_t supervisionTimeout;
309365
uint16_t masterClockAccuracy;

0 commit comments

Comments
 (0)