my version with changed conversion between duration units

Fork of BLE_API by Bluetooth Low Energy

Committer:
jslater8
Date:
Wed Aug 05 14:20:04 2015 +0000
Revision:
758:85c13328a10a
Parent:
728:997ba5e7b3b6
Conversion from Interval duration units to milliseconds now in GapAdvertisingParams.h and changed getInterval to properly convert back to milliseconds

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rgrover1 712:b04b5db36865 1 /* mbed Microcontroller Library
rgrover1 712:b04b5db36865 2 * Copyright (c) 2006-2013 ARM Limited
rgrover1 712:b04b5db36865 3 *
rgrover1 712:b04b5db36865 4 * Licensed under the Apache License, Version 2.0 (the "License");
rgrover1 712:b04b5db36865 5 * you may not use this file except in compliance with the License.
rgrover1 712:b04b5db36865 6 * You may obtain a copy of the License at
rgrover1 712:b04b5db36865 7 *
rgrover1 712:b04b5db36865 8 * http://www.apache.org/licenses/LICENSE-2.0
rgrover1 712:b04b5db36865 9 *
rgrover1 712:b04b5db36865 10 * Unless required by applicable law or agreed to in writing, software
rgrover1 712:b04b5db36865 11 * distributed under the License is distributed on an "AS IS" BASIS,
rgrover1 712:b04b5db36865 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
rgrover1 712:b04b5db36865 13 * See the License for the specific language governing permissions and
rgrover1 712:b04b5db36865 14 * limitations under the License.
rgrover1 712:b04b5db36865 15 */
rgrover1 712:b04b5db36865 16
rgrover1 712:b04b5db36865 17 #include "ble/DiscoveredCharacteristic.h"
rgrover1 712:b04b5db36865 18 #include "ble/GattClient.h"
rgrover1 712:b04b5db36865 19
rgrover1 712:b04b5db36865 20 ble_error_t
rgrover1 712:b04b5db36865 21 DiscoveredCharacteristic::read(uint16_t offset) const
rgrover1 712:b04b5db36865 22 {
rgrover1 712:b04b5db36865 23 if (!props.read()) {
rgrover1 712:b04b5db36865 24 return BLE_ERROR_OPERATION_NOT_PERMITTED;
rgrover1 712:b04b5db36865 25 }
rgrover1 712:b04b5db36865 26
rgrover1 712:b04b5db36865 27 if (!gattc) {
rgrover1 712:b04b5db36865 28 return BLE_ERROR_INVALID_STATE;
rgrover1 712:b04b5db36865 29 }
rgrover1 712:b04b5db36865 30
rgrover1 712:b04b5db36865 31 return gattc->read(connHandle, valueHandle, offset);
rgrover1 712:b04b5db36865 32 }
rgrover1 712:b04b5db36865 33
rgrover1 712:b04b5db36865 34 ble_error_t
rgrover1 712:b04b5db36865 35 DiscoveredCharacteristic::write(uint16_t length, const uint8_t *value) const
rgrover1 712:b04b5db36865 36 {
rgrover1 712:b04b5db36865 37 if (!props.write()) {
rgrover1 712:b04b5db36865 38 return BLE_ERROR_OPERATION_NOT_PERMITTED;
rgrover1 712:b04b5db36865 39 }
rgrover1 712:b04b5db36865 40
rgrover1 712:b04b5db36865 41 if (!gattc) {
rgrover1 712:b04b5db36865 42 return BLE_ERROR_INVALID_STATE;
rgrover1 712:b04b5db36865 43 }
rgrover1 712:b04b5db36865 44
rgrover1 712:b04b5db36865 45 return gattc->write(GattClient::GATT_OP_WRITE_REQ, connHandle, valueHandle, length, value);
rgrover1 712:b04b5db36865 46 }
rgrover1 712:b04b5db36865 47
rgrover1 712:b04b5db36865 48 ble_error_t
rgrover1 712:b04b5db36865 49 DiscoveredCharacteristic::writeWoResponse(uint16_t length, const uint8_t *value) const
rgrover1 712:b04b5db36865 50 {
rgrover1 712:b04b5db36865 51 if (!props.writeWoResp()) {
rgrover1 712:b04b5db36865 52 return BLE_ERROR_OPERATION_NOT_PERMITTED;
rgrover1 712:b04b5db36865 53 }
rgrover1 712:b04b5db36865 54
rgrover1 712:b04b5db36865 55 if (!gattc) {
rgrover1 712:b04b5db36865 56 return BLE_ERROR_INVALID_STATE;
rgrover1 712:b04b5db36865 57 }
rgrover1 712:b04b5db36865 58
rgrover1 712:b04b5db36865 59 return gattc->write(GattClient::GATT_OP_WRITE_CMD, connHandle, valueHandle, length, value);
rgrover1 712:b04b5db36865 60 }
rgrover1 712:b04b5db36865 61
rgrover1 712:b04b5db36865 62 ble_error_t
rgrover1 712:b04b5db36865 63 DiscoveredCharacteristic::discoverDescriptors(DescriptorCallback_t callback, const UUID &matchingUUID) const
rgrover1 712:b04b5db36865 64 {
rgrover1 712:b04b5db36865 65 return BLE_ERROR_NOT_IMPLEMENTED; /* TODO: this needs to be filled in. */
rgrover1 712:b04b5db36865 66 }