High level Bluetooth Low Energy API and radio abstraction layer

Dependents:   BLE_ANCS_SDAPI BLE_temperature BLE_HeartRate BLE_ANCS_SDAPI_IRC ... more

Overview

The BLE_API is a high level abstraction for using Bluetooth Low Energy on multiple platforms. For details and examples using the BLE_API please see the BLE_API Summary Page. Or click on the API Documentation tab above.

Supported Services

Supported services can be found in the BLE_API/services folder.

Revision:
1179:4ab722f8dca0
Parent:
1177:f9060dc8c5ab
Child:
1183:1589830dbdb7
--- a/ble/DiscoveredCharacteristic.h	Wed Apr 06 19:15:28 2016 +0100
+++ b/ble/DiscoveredCharacteristic.h	Wed Apr 06 19:15:30 2016 +0100
@@ -28,24 +28,20 @@
  * @brief Representation of a characteristic discovered during a GattClient
  * discovery procedure (see GattClient::launchServiceDiscovery ).
  *
- * @details Provide detailed informations about a discovered characteristic like:
- *     - Its UUID (see getUUID()).
+ * @detail Provide detailed informations about a discovered characteristic like:
+ *     - Its UUID (see #getUUID).
  *     - The most important handles of the characteristic definition
- *       (see getDeclHandle(), getValueHandle(), getLastHandle())
- *     - Its properties (see getProperties()).
+ *       (see #getDeclHandle, #getValueHandle, #getLastHandle )
+ *     - Its properties (see #getProperties).
  * This class also provide functions to operate on the characteristic:
- *     - Read the characteristic value (see read())
- *     - Writing a characteristic value (see write() or writeWoResponse())
+ *     - Read the characteristic value (see #read)
+ *     - Writing a characteristic value (see #write or #writeWoResponse)
  *     - Discover descriptors inside the characteristic definition. These descriptors
  *       extends the characteristic. More information about descriptor usage is
  *       available in DiscoveredCharacteristicDescriptor class.
  */
 class DiscoveredCharacteristic {
 public:
-    /**
-     * Structure that encapsulates the properties of a discovered
-     * characteristic.
-     */
     struct Properties_t {
         uint8_t _broadcast       :1; /**< Broadcasting the value permitted. */
         uint8_t _read            :1; /**< Reading the value permitted. */
@@ -56,81 +52,19 @@
         uint8_t _authSignedWrite :1; /**< Writing the value with Signed Write Command permitted. */
 
     public:
-        /**
-         * @brief   Check if broadcasting is permitted.
-         *
-         * @return  true if broadcasting the value is permitted, and false
-         *          otherwise.
-         */
-        bool broadcast(void) const {
-            return _broadcast;
-        }
-
-        /**
-         * @brief   Check reading is permitted.
-         *
-         * @return  true if reading the value is permitted, and false
-         *          otherwise.
-         */
-        bool read(void) const {
-            return _read;
-        }
-
-        /**
-         * @brief   Check if writing with Write Command is permitted.
-         *
-         * @return  true if writing the value with Write Command is permitted,
-         *          false otherwise.
-         */
-        bool writeWoResp(void) const {
-            return _writeWoResp;
-        }
-
-        /**
-         * @brief   Check if writing with Write Request is permitted.
-         *
-         * @return  true if writing the value with Write Request is permitted,
-         *          false otherwise.
-         */
-        bool write(void) const {
-            return _write;
-        }
-
-        /**
-         * @brief   Check notifications are permitted.
-         *
-         * @return  true if notifications of the value are permitted, false
-         *          otherwise.
-         */
-        bool notify(void) const {
-            return _notify;
-        }
-
-        /**
-         * @brief   Check if indications are permitted.
-         *
-         * @return  true if indications of the value are permitted, false
-         *          otherwise.
-         */
-        bool indicate(void) const {
-            return _indicate;
-        }
-
-        /**
-         * @brief   Check if writing with Signed Write Command is permitted.
-         *
-         * @return  true if writing the value with Signed Write Command is
-         *          permitted, false otherwise.
-         */
-        bool authSignedWrite(void) const {
-            return _authSignedWrite;
-        }
+        bool broadcast(void)       const {return _broadcast;      }
+        bool read(void)            const {return _read;           }
+        bool writeWoResp(void)     const {return _writeWoResp;    }
+        bool write(void)           const {return _write;          }
+        bool notify(void)          const {return _notify;         }
+        bool indicate(void)        const {return _indicate;       }
+        bool authSignedWrite(void) const {return _authSignedWrite;}
 
         /**
          * @brief "Equal to" operator for DiscoveredCharacteristic::Properties_t
          *
-         * @param[in] lhs The left hand side of the equality expression
-         * @param[in] rhs The right hand side of the equality expression
+         * @param lhs[in] The left hand side of the equality expression
+         * @param rhs[in] The right hand side of the equality expression
          *
          * @return true if operands are equals, false otherwise.
          */
@@ -167,9 +101,8 @@
      * than ATT_MTU - 1, this function must be called multiple times with
      * appropriate offset to read the complete value.
      *
-     * @param[in] offset
-     *              The position - in the characteristic value bytes stream - where
-     *              the read operation begin.
+     * @param offset[in] The position - in the characteristic value bytes stream - where
+     * the read operation begin.
      *
      * @return BLE_ERROR_NONE if a read has been initiated, or
      *         BLE_ERROR_INVALID_STATE if some internal state about the connection is invalid, or
@@ -182,11 +115,9 @@
      * @brief Same as #read(uint16_t) const but allow the user to register a callback
      * which will be fired once the read is done.
      *
-     * @param[in] offset
-     *              The position - in the characteristic value bytes stream - where
-     *              the read operation begin.
-     * @param[in] onRead
-     *              Continuation of the read operation
+     * @param offset[in] The position - in the characteristic value bytes stream - where
+     * the read operation begin.
+     * @param onRead[in] Continuation of the read operation
      */
     ble_error_t read(uint16_t offset, const GattClient::ReadCallback_t& onRead) const;
 
@@ -243,21 +174,12 @@
     ble_error_t write(uint16_t length, const uint8_t *value) const;
 
     /**
-     * Same as write(uint16_t, const uint8_t *) const but register a callback
+     * Same as #write(uint16_t, const uint8_t *) const but register a callback
      * which will be called once the data has been written.
      *
-     * @param[in] length
-     *              The amount of bytes to write.
-     * @param[in] value
-     *              The bytes to write.
-     * @param[in] onWrite
-     *              Continuation callback for the write operation
-     *
-     * @retval BLE_ERROR_NONE Successfully started the Write procedure, or
-     *         BLE_ERROR_INVALID_STATE if some internal state about the connection is invalid, or
-     *         BLE_STACK_BUSY if some client procedure is already in progress, or
-     *         BLE_ERROR_NO_MEM if there are no available buffers left to process the request, or
-     *         BLE_ERROR_OPERATION_NOT_PERMITTED due to the characteristic's properties.
+     * @param[in] length The amount of bytes to write.
+     * @param[in] value The bytes to write.
+     * @param[in] onRead Continuation callback for the write operation
      */
     ble_error_t write(uint16_t length, const uint8_t *value, const GattClient::WriteCallback_t& onWrite) const;
 
@@ -284,7 +206,7 @@
 
     /**
      * @brief Get the declaration handle of this characteristic.
-     * @details The declaration handle is the first handle of a characteristic
+     * @detail The declaration handle is the first handle of a characteristic
      * definition. The value accessible at this handle contains the following
      * informations:
      *    - The characteristics properties (see Properties_t). This value can
@@ -353,10 +275,8 @@
     /**
      * @brief "Equal to" operator for DiscoveredCharacteristic
      *
-     * @param[in] lhs
-     *              The left hand side of the equality expression
-     * @param[in] rhs
-     *              The right hand side of the equality expression
+     * @param lhs[in] The left hand side of the equality expression
+     * @param rhs[in] The right hand side of the equality expression
      *
      * @return true if operands are equals, false otherwise.
      */
@@ -373,12 +293,10 @@
     /**
      * @brief "Not equal to" operator for DiscoveredCharacteristic
      *
-     * @param[in] lhs
-     *              The right hand side of the expression
-     * @param[in] rhs
-     *              The left hand side of the expression
+     * @param lhs[in] The right hand side of the expression
+     * @param rhs[in] The left hand side of the expression
      *
-     * @return true if operands are not equal, false otherwise.
+     * @return true if operands are not equals, false otherwise.
      */
     friend bool operator !=(const DiscoveredCharacteristic& lhs, const DiscoveredCharacteristic& rhs) {
         return !(lhs == rhs);
@@ -396,37 +314,15 @@
     }
 
 protected:
-    /**
-     * Pointer to the underlying GattClient for this DiscoveredCharacteristic object.
-     */
     GattClient              *gattc;
 
 protected:
-    /**
-     * Discovered characteristic's UUID.
-     */
     UUID                     uuid;
-    /**
-     * Hold the configured properties of the discovered characteristic.
-     * For more information refer to Properties_t.
-     */
     Properties_t             props;
-    /**
-     * Value handle of the discovered characteristic's declaration attribute.
-     */
     GattAttribute::Handle_t  declHandle;
-    /**
-     * Value handle of the discovered characteristic's value attribute.
-     */
     GattAttribute::Handle_t  valueHandle;
-    /**
-     * Value handle of the discovered characteristic's last attribute.
-     */
     GattAttribute::Handle_t  lastHandle;
 
-    /**
-     * Handle for the connection where the characteristic was discovered.
-     */
     Gap::Handle_t            connHandle;
 };