Rtos API example

Embed: (wiki syntax)

« Back to documentation index

AttClientToGattClientAdapter Class Reference

AttClientToGattClientAdapter Class Reference

Adapt a pal::AttClient into a pal::GattClient. More...

#include <AttClientToGattClientAdapter.h>

Inherits ble::pal::GattClient.

Public Member Functions

 AttClientToGattClientAdapter (AttClient &client)
 Construct an instance of GattClient from an instance of AttClient.
virtual ble_error_t exchange_mtu (connection_handle_t connection)
virtual ble_error_t get_mtu_size (connection_handle_t connection_handle, uint16_t &mtu_size)
virtual ble_error_t discover_primary_service (connection_handle_t connection, attribute_handle_t discovery_range_begining)
virtual ble_error_t discover_primary_service_by_service_uuid (connection_handle_t connection_handle, attribute_handle_t discovery_range_begining, const UUID &uuid)
virtual ble_error_t find_included_service (connection_handle_t connection_handle, attribute_handle_range_t service_range)
virtual ble_error_t discover_characteristics_of_a_service (connection_handle_t connection_handle, attribute_handle_range_t discovery_range)
virtual ble_error_t discover_characteristics_descriptors (connection_handle_t connection_handle, attribute_handle_range_t descriptors_discovery_range)
virtual ble_error_t read_attribute_value (connection_handle_t connection_handle, attribute_handle_t attribute_handle)
virtual ble_error_t read_using_characteristic_uuid (connection_handle_t connection_handle, attribute_handle_range_t read_range, const UUID &uuid)
virtual ble_error_t read_attribute_blob (connection_handle_t connection_handle, attribute_handle_t attribute_handle, uint16_t offset)
virtual ble_error_t read_multiple_characteristic_values (connection_handle_t connection_handle, const ArrayView< const attribute_handle_t > &characteristic_value_handles)
virtual ble_error_t write_without_response (connection_handle_t connection_handle, attribute_handle_t characteristic_value_handle, const ArrayView< const uint8_t > &value)
virtual ble_error_t signed_write_without_response (connection_handle_t connection_handle, attribute_handle_t characteristic_value_handle, const ArrayView< const uint8_t > &value)
virtual ble_error_t write_attribute (connection_handle_t connection_handle, attribute_handle_t attribute_handle, const ArrayView< const uint8_t > &value)
virtual ble_error_t queue_prepare_write (connection_handle_t connection_handle, attribute_handle_t characteristic_value_handle, const ArrayView< const uint8_t > &value, uint16_t offset)
virtual ble_error_t execute_write_queue (connection_handle_t connection_handle, bool execute)
virtual ble_error_t initialize ()
virtual ble_error_t terminate ()
void when_server_message_received (mbed::Callback< void(connection_handle_t, const AttServerMessage &)> cb)
 Register a callback which will handle messages from the server.
void when_transaction_timeout (mbed::Callback< void(connection_handle_t)> cb)
 Register a callback handling transaction timeout.

Protected Member Functions

void on_server_event (connection_handle_t connection_handle, const AttServerMessage &server_message)
 Upon server message reception an implementation shall call this function.
void on_transaction_timeout (connection_handle_t connection_handle)
 Upon transaction timeout an implementation shall call this function.

Detailed Description

Adapt a pal::AttClient into a pal::GattClient.

This class let vendors define their abstraction layer in term of an AttClient and adapt any AttClient into a GattClient.

Definition at line 32 of file AttClientToGattClientAdapter.h.


Constructor & Destructor Documentation

Construct an instance of GattClient from an instance of AttClient.

Parameters:
clientThe client to adapt.

Definition at line 44 of file AttClientToGattClientAdapter.h.


Member Function Documentation

virtual ble_error_t discover_characteristics_descriptors ( connection_handle_t  connection_handle,
attribute_handle_range_t  descriptors_discovery_range 
) [virtual]
virtual ble_error_t discover_characteristics_of_a_service ( connection_handle_t  connection_handle,
attribute_handle_range_t  discovery_range 
) [virtual]
virtual ble_error_t discover_primary_service ( connection_handle_t  connection,
attribute_handle_t  discovery_range_begining 
) [virtual]
virtual ble_error_t discover_primary_service_by_service_uuid ( connection_handle_t  connection_handle,
attribute_handle_t  discovery_range_begining,
const UUID uuid 
) [virtual]
virtual ble_error_t exchange_mtu ( connection_handle_t  connection ) [virtual]
See also:
ble::pal::GattClient::exchange_mtu

Implements GattClient.

Definition at line 59 of file AttClientToGattClientAdapter.h.

virtual ble_error_t execute_write_queue ( connection_handle_t  connection_handle,
bool  execute 
) [virtual]
virtual ble_error_t find_included_service ( connection_handle_t  connection_handle,
attribute_handle_range_t  service_range 
) [virtual]
virtual ble_error_t get_mtu_size ( connection_handle_t  connection_handle,
uint16_t &  mtu_size 
) [virtual]
See also:
ble::pal::GattClient::get_mtu_size

Implements GattClient.

Definition at line 66 of file AttClientToGattClientAdapter.h.

virtual ble_error_t initialize (  ) [virtual]
See also:
ble::pal::GattClient::initialize

Implements GattClient.

Definition at line 278 of file AttClientToGattClientAdapter.h.

void on_server_event ( connection_handle_t  connection_handle,
const AttServerMessage server_message 
) [protected, inherited]

Upon server message reception an implementation shall call this function.

Parameters:
connection_handleThe handle of the connection which has received the server message.
server_messageThe message received from the server.

Definition at line 597 of file PalGattClient.h.

void on_transaction_timeout ( connection_handle_t  connection_handle ) [protected, inherited]

Upon transaction timeout an implementation shall call this function.

Parameters:
connection_handleThe handle of the connection of the transaction which has times out.
Note:
see BLUETOOTH SPECIFICATION Version 5.0 | Vol 3, Part F Section 3.3.3
see BLUETOOTH SPECIFICATION Version 5.0 | Vol 3, Part G Section 4.4.14

Definition at line 615 of file PalGattClient.h.

virtual ble_error_t queue_prepare_write ( connection_handle_t  connection_handle,
attribute_handle_t  characteristic_value_handle,
const ArrayView< const uint8_t > &  value,
uint16_t  offset 
) [virtual]
virtual ble_error_t read_attribute_blob ( connection_handle_t  connection_handle,
attribute_handle_t  attribute_handle,
uint16_t  offset 
) [virtual]
virtual ble_error_t read_attribute_value ( connection_handle_t  connection_handle,
attribute_handle_t  attribute_handle 
) [virtual]
virtual ble_error_t read_multiple_characteristic_values ( connection_handle_t  connection_handle,
const ArrayView< const attribute_handle_t > &  characteristic_value_handles 
) [virtual]
virtual ble_error_t read_using_characteristic_uuid ( connection_handle_t  connection_handle,
attribute_handle_range_t  read_range,
const UUID uuid 
) [virtual]
virtual ble_error_t signed_write_without_response ( connection_handle_t  connection_handle,
attribute_handle_t  characteristic_value_handle,
const ArrayView< const uint8_t > &  value 
) [virtual]
virtual ble_error_t terminate (  ) [virtual]
See also:
ble::pal::GattClient::terminate

Implements GattClient.

Definition at line 285 of file AttClientToGattClientAdapter.h.

void when_server_message_received ( mbed::Callback< void(connection_handle_t, const AttServerMessage &)>  cb ) [inherited]

Register a callback which will handle messages from the server.

Parameters:
cbThe callback object which will handle messages from the server. It accept two parameters in input: The handle of the connection where the message was received and the message received. Real type of the message can be obtained from its opcode.

Definition at line 562 of file PalGattClient.h.

void when_transaction_timeout ( mbed::Callback< void(connection_handle_t)>  cb ) [inherited]

Register a callback handling transaction timeout.

Parameters:
cbThe callback handling timeout of a transaction. It accepts as a parameter the connection handle involved in the timeout.
Note:
No more attribute protocol requests, commands, indication or notification shall be sent over a connection implied in a transaction timeout. To send a new ATT message, the conenction should be reestablished.

Definition at line 579 of file PalGattClient.h.

virtual ble_error_t write_attribute ( connection_handle_t  connection_handle,
attribute_handle_t  attribute_handle,
const ArrayView< const uint8_t > &  value 
) [virtual]
See also:
ble::pal::GattClient::write_attribute

Implements GattClient.

Definition at line 236 of file AttClientToGattClientAdapter.h.

virtual ble_error_t write_without_response ( connection_handle_t  connection_handle,
attribute_handle_t  characteristic_value_handle,
const ArrayView< const uint8_t > &  value 
) [virtual]