20
20
#ifndef MBED_GATT_SERVER_H__
21
21
#define MBED_GATT_SERVER_H__
22
22
23
+ #include " platform/mbed_toolchain.h"
24
+
23
25
#include " ble/common/CallChainOfFunctionPointersWithContext.h"
24
26
#include " ble/common/blecommon.h"
25
27
@@ -118,6 +120,84 @@ class GattServer {
118
120
(void )connectionHandle;
119
121
(void )attMtuSize;
120
122
}
123
+
124
+ /* *
125
+ * Function invoked when the server has sent data to a client as
126
+ * part of a notification/indication.
127
+ *
128
+ * @note params has a temporary scope and should be copied by the
129
+ * application if needed later
130
+ */
131
+ virtual void onDataSent (const GattDataSentCallbackParams ¶ms) {
132
+ (void )params;
133
+ }
134
+
135
+ /* *
136
+ * Function invoked when a client writes an attribute
137
+ *
138
+ * @note params has a temporary scope and should be copied by the
139
+ * application if needed later
140
+ */
141
+ virtual void onDataWritten (const GattWriteCallbackParams ¶ms) {
142
+ (void )params;
143
+ }
144
+
145
+ /* *
146
+ * Function invoked when a client reads an attribute
147
+ *
148
+ * @note This functionality may not be available on all underlying stacks.
149
+ * Application code may work around that limitation by monitoring read
150
+ * requests instead of read events.
151
+ *
152
+ * @note params has a temporary scope and should be copied by the
153
+ * application if needed later
154
+ *
155
+ * @see GattCharacteristic::setReadAuthorizationCallback()
156
+ * @see isOnDataReadAvailable().
157
+ */
158
+ virtual void onDataRead (const GattReadCallbackParams ¶ms) {
159
+ (void )params;
160
+ }
161
+
162
+ /* *
163
+ * Function invoked when the GattServer instance is about
164
+ * to be shut down. This can result in a call to reset() or BLE::reset().
165
+ */
166
+ virtual void onShutdown (const GattServer &server) {
167
+ (void )server;
168
+ }
169
+
170
+ /* *
171
+ * Function invoked when the client has subscribed to characteristic updates
172
+ *
173
+ * @note params has a temporary scope and should be copied by the
174
+ * application if needed later
175
+ */
176
+ virtual void onUpdatesEnabled (const GattUpdatesEnabledCallbackParams ¶ms) {
177
+ (void )params;
178
+ }
179
+
180
+ /* *
181
+ * Function invoked when the client has unsubscribed to characteristic updates
182
+ *
183
+ * @note params has a temporary scope and should be copied by the
184
+ * application if needed later
185
+ */
186
+ virtual void onUpdatesDisabled (const GattUpdatesDisabledCallbackParams ¶ms) {
187
+ (void )params;
188
+ }
189
+
190
+ /* *
191
+ * Function invoked when an ACK has been received for an
192
+ * indication sent to the client.
193
+ *
194
+ * @note params has a temporary scope and should be copied by the
195
+ * application if needed later
196
+ */
197
+ virtual void onConfirmationReceived (const GattConfirmationReceivedCallbackParams ¶ms) {
198
+ (void )params;
199
+ }
200
+
121
201
protected:
122
202
/* *
123
203
* Prevent polymorphic deletion and avoid unnecessary virtual destructor
@@ -407,6 +487,8 @@ class GattServer {
407
487
* @note It is possible to chain together multiple onDataSent callbacks
408
488
* (potentially from different modules of an application).
409
489
*/
490
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
491
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
410
492
void onDataSent (const DataSentCallback_t &callback);
411
493
412
494
/* *
@@ -419,6 +501,8 @@ class GattServer {
419
501
* function.
420
502
*/
421
503
template <typename T>
504
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
505
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
422
506
void onDataSent (T *objPtr, void (T::*memberPtr)(unsigned count))
423
507
{
424
508
onDataSent ({objPtr, memberPtr});
@@ -429,6 +513,8 @@ class GattServer {
429
513
*
430
514
* @return A reference to the DATA_SENT event callback chain.
431
515
*/
516
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
517
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
432
518
DataSentCallbackChain_t &onDataSent ();
433
519
434
520
/* *
@@ -440,6 +526,8 @@ class GattServer {
440
526
* @attention It is possible to set multiple event handlers. Registered
441
527
* handlers may be removed with onDataWritten().detach(callback).
442
528
*/
529
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
530
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
443
531
void onDataWritten (const DataWrittenCallback_t &callback);
444
532
445
533
/* *
@@ -452,6 +540,8 @@ class GattServer {
452
540
* function.
453
541
*/
454
542
template <typename T>
543
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
544
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
455
545
void onDataWritten (
456
546
T *objPtr,
457
547
void (T::*memberPtr)(const GattWriteCallbackParams *context)
@@ -471,6 +561,8 @@ class GattServer {
471
561
* @note It is possible to unregister callbacks using
472
562
* onDataWritten().detach(callback).
473
563
*/
564
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
565
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
474
566
DataWrittenCallbackChain_t &onDataWritten();
475
567
476
568
/* *
@@ -491,6 +583,8 @@ class GattServer {
491
583
* @attention It is possible to set multiple event handlers. Registered
492
584
* handlers may be removed with onDataRead().detach(callback).
493
585
*/
586
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
587
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
494
588
ble_error_t onDataRead(const DataReadCallback_t &callback);
495
589
496
590
/* *
@@ -502,6 +596,8 @@ class GattServer {
502
596
* function.
503
597
*/
504
598
template <typename T>
599
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
600
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
505
601
ble_error_t onDataRead(
506
602
T *objPtr,
507
603
void (T::*memberPtr)(const GattReadCallbackParams *context)
@@ -521,6 +617,8 @@ class GattServer {
521
617
* @note It is possible to unregister callbacks using
522
618
* onDataRead().detach(callback).
523
619
*/
620
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
621
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
524
622
DataReadCallbackChain_t &onDataRead();
525
623
526
624
/* *
@@ -536,6 +634,8 @@ class GattServer {
536
634
* @note It is possible to unregister a callback using
537
635
* onShutdown().detach(callback)
538
636
*/
637
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
638
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
539
639
void onShutdown(const GattServerShutdownCallback_t &callback);
540
640
541
641
/* *
@@ -550,6 +650,8 @@ class GattServer {
550
650
* function.
551
651
*/
552
652
template <typename T>
653
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
654
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
553
655
void onShutdown(T *objPtr, void (T::*memberPtr)(const GattServer *))
554
656
{
555
657
onShutdown ({objPtr, memberPtr});
@@ -566,6 +668,8 @@ class GattServer {
566
668
* @note It is possible to unregister callbacks using
567
669
* onShutdown().detach(callback).
568
670
*/
671
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
672
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
569
673
GattServerShutdownCallbackChain_t& onShutdown();
570
674
571
675
/* *
@@ -574,6 +678,8 @@ class GattServer {
574
678
*
575
679
* @param[in] callback Event handler being registered.
576
680
*/
681
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
682
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
577
683
void onUpdatesEnabled(EventCallback_t callback);
578
684
579
685
/* *
@@ -582,6 +688,8 @@ class GattServer {
582
688
*
583
689
* @param[in] callback Event handler being registered.
584
690
*/
691
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
692
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
585
693
void onUpdatesDisabled(EventCallback_t callback);
586
694
587
695
/* *
@@ -592,6 +700,8 @@ class GattServer {
592
700
*
593
701
* @param[in] callback Event handler being registered.
594
702
*/
703
+ MBED_DEPRECATED_SINCE (" mbed-os-6.3.0" , " Individual callback-registering functions have"
704
+ " been replaced by GattServer::setEventHandler. Use that function instead." )
595
705
void onConfirmationReceived(EventCallback_t callback);
596
706
597
707
#if !defined(DOXYGEN_ONLY)
0 commit comments