Skip to content

Commit 3061db2

Browse files
committed
BLE: Put generic gattclient procedures inside the GattClient class
1 parent c5bc247 commit 3061db2

File tree

2 files changed

+13
-22
lines changed

2 files changed

+13
-22
lines changed

features/FEATURE_BLE/ble/generic/GenericGattClient.h

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -26,27 +26,12 @@
2626
namespace ble {
2727
namespace generic {
2828

29-
// forward declarations
30-
struct procedure_control_block_t;
31-
struct discovery_control_block_t;
32-
struct read_control_block_t;
33-
struct write_control_block_t;
34-
struct descriptor_discovery_control_block_t;
35-
3629
/**
3730
* Generic implementation of the GattClient.
3831
* It requires a pal::GattClient injected at construction site.
3932
* @important: Not part of the public interface of BLE API.
4033
*/
4134
class GenericGattClient : public GattClient {
42-
43-
// give access to control block classes
44-
friend struct procedure_control_block_t;
45-
friend struct discovery_control_block_t;
46-
friend struct read_control_block_t;
47-
friend struct write_control_block_t;
48-
friend struct descriptor_discovery_control_block_t;
49-
5035
public:
5136
/**
5237
* Create a GenericGattClient from a pal::GattClient
@@ -130,6 +115,12 @@ class GenericGattClient : public GattClient {
130115
virtual ble_error_t reset(void);
131116

132117
private:
118+
struct procedure_control_block_t;
119+
struct discovery_control_block_t;
120+
struct read_control_block_t;
121+
struct write_control_block_t;
122+
struct descriptor_discovery_control_block_t;
123+
133124
procedure_control_block_t* get_control_block(Gap::Handle_t connection);
134125
const procedure_control_block_t* get_control_block(Gap::Handle_t connection) const;
135126
void insert_control_block(procedure_control_block_t* cb) const;

features/FEATURE_BLE/source/generic/GenericGattClient.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ enum procedure_type_t {
5555
/*
5656
* Base class for a procedure control block
5757
*/
58-
struct procedure_control_block_t {
58+
struct GenericGattClient::procedure_control_block_t {
5959
/*
6060
* Base constructor for procedure control block.
6161
*/
@@ -83,7 +83,7 @@ struct procedure_control_block_t {
8383
/*
8484
* Procedure control block for the discovery process.
8585
*/
86-
struct discovery_control_block_t : public procedure_control_block_t {
86+
struct GenericGattClient::discovery_control_block_t : public procedure_control_block_t {
8787
discovery_control_block_t(
8888
Gap::Handle_t handle,
8989
ServiceDiscovery::ServiceCallback_t service_callback,
@@ -409,7 +409,7 @@ struct discovery_control_block_t : public procedure_control_block_t {
409409
};
410410

411411

412-
struct read_control_block_t : public procedure_control_block_t {
412+
struct GenericGattClient::read_control_block_t : public procedure_control_block_t {
413413
read_control_block_t(
414414
Gap::Handle_t connection_handle, uint16_t attribute_handle, uint16_t offset
415415
) : procedure_control_block_t(READ_PROCEDURE, connection_handle),
@@ -593,7 +593,7 @@ struct read_control_block_t : public procedure_control_block_t {
593593
/*
594594
* Control block for the write process
595595
*/
596-
struct write_control_block_t : public procedure_control_block_t {
596+
struct GenericGattClient::write_control_block_t : public procedure_control_block_t {
597597
write_control_block_t(
598598
Gap::Handle_t connection_handle, uint16_t attribute_handle,
599599
uint8_t* data, uint16_t len
@@ -785,7 +785,7 @@ struct write_control_block_t : public procedure_control_block_t {
785785
/*
786786
* Control block for the descriptor discovery process
787787
*/
788-
struct descriptor_discovery_control_block_t : public procedure_control_block_t {
788+
struct GenericGattClient::descriptor_discovery_control_block_t : public procedure_control_block_t {
789789
descriptor_discovery_control_block_t(
790790
const DiscoveredCharacteristic& characteristic,
791791
const CharacteristicDescriptorDiscovery::DiscoveryCallback_t& discoveryCallback,
@@ -1278,15 +1278,15 @@ void GenericGattClient::on_transaction_timeout(connection_handle_t connection) {
12781278
pcb->handle_timeout_error(this);
12791279
}
12801280

1281-
procedure_control_block_t* GenericGattClient::get_control_block(Gap::Handle_t connection) {
1281+
GenericGattClient::procedure_control_block_t* GenericGattClient::get_control_block(Gap::Handle_t connection) {
12821282
procedure_control_block_t* it = control_blocks;
12831283
while (it && it->connection_handle != connection) {
12841284
it = it->next;
12851285
}
12861286
return it;
12871287
}
12881288

1289-
const procedure_control_block_t* GenericGattClient::get_control_block(Gap::Handle_t connection) const {
1289+
const GenericGattClient::procedure_control_block_t* GenericGattClient::get_control_block(Gap::Handle_t connection) const {
12901290
procedure_control_block_t* it = control_blocks;
12911291
while (it && it->connection_handle != connection) {
12921292
it = it->next;

0 commit comments

Comments
 (0)