BLE API as used in the blog entry.
Dependents: BLE_iBeacon_Exercise
Fork of BLE_API_Native by
hw/GattServerEvents.h
- Committer:
- donalm
- Date:
- 2014-02-23
- Revision:
- 18:f776bb9efb7a
- Parent:
- 17:d5600677d532
File content as of revision 18:f776bb9efb7a:
/* mbed Microcontroller Library * Copyright (c) 2006-2013 ARM Limited * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef __GATT_SERVER_EVENTS_H__ #define __GATT_SERVER_EVENTS_H__ #include "blecommon.h" #include "mbed.h" /**************************************************************************/ /*! \brief The base class used to abstract away the callback events that can be triggered with the GATT Server. */ /**************************************************************************/ class GattServerEvents { public: /******************************************************************/ /*! \brief Identifies GATT events generated by the radio HW when an event callback occurs */ /******************************************************************/ typedef enum gattEvent_e { GATT_EVENT_DATA_SENT = 1, /**< Fired when a msg was successfully sent out (notify only?) */ GATT_EVENT_DATA_WRITTEN = 2, /**< Client wrote data to Server (separate into char and descriptor writes?) */ GATT_EVENT_UPDATES_ENABLED = 3, /**< Notify/Indicate Enabled in CCCD */ GATT_EVENT_UPDATES_DISABLED = 4, /**< Notify/Indicate Disabled in CCCD */ GATT_EVENT_CONFIRMATION_RECEIVED = 5 /**< Response received from Indicate message */ } gattEvent_t; /******************************************************************/ /*! \brief A message was successfully transmitted */ /******************************************************************/ virtual void onDataSent(uint16_t charHandle) {} /******************************************************************/ /*! \brief The GATT client (the phone, tablet, etc.) wrote data to a characteristic or descriptor on the GATT Server (the peripheral device). */ /******************************************************************/ virtual void onDataWritten(uint16_t charHandle) {} /******************************************************************/ /*! \brief A Notify or Indicate flag was enabled in the CCCD */ /******************************************************************/ virtual void onUpdatesEnabled(uint16_t charHandle) {} /******************************************************************/ /*! \brief A Notify or Indicate flag was disabled in the CCCD */ /******************************************************************/ virtual void onUpdatesDisabled(uint16_t charHandle) {} /******************************************************************/ /*! \brief A confirmation response was received from an Indicate message */ /******************************************************************/ virtual void onConfirmationReceived(uint16_t charHandle) {} }; #endif