Nordic stack and drivers for the mbed BLE API. Version to work around build bug.

Dependents:   microbit_rubber_ducky microbit_mouse_BLE microbit_mouse_BLE_daybreak_version microbit_presenter

Fork of nRF51822 by Nordic Semiconductor

Committer:
rgrover1
Date:
Mon Nov 02 09:05:10 2015 +0000
Revision:
456:da0323feba9b
Parent:
455:e33de7c4574c
Child:
542:1bf9c597f44f
Synchronized with git rev 97a65815
Author: Andres Amaya Garcia
Introduced changes for memory savings

Moved GattSecurityManager and GattClient to be allocated dynamically and
reduced the size of some arrays to increase memory savings.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rgrover1 388:db85a09c27ef 1 /* mbed Microcontroller Library
rgrover1 388:db85a09c27ef 2 * Copyright (c) 2006-2013 ARM Limited
rgrover1 388:db85a09c27ef 3 *
rgrover1 388:db85a09c27ef 4 * Licensed under the Apache License, Version 2.0 (the "License");
rgrover1 388:db85a09c27ef 5 * you may not use this file except in compliance with the License.
rgrover1 388:db85a09c27ef 6 * You may obtain a copy of the License at
rgrover1 388:db85a09c27ef 7 *
rgrover1 388:db85a09c27ef 8 * http://www.apache.org/licenses/LICENSE-2.0
rgrover1 388:db85a09c27ef 9 *
rgrover1 388:db85a09c27ef 10 * Unless required by applicable law or agreed to in writing, software
rgrover1 388:db85a09c27ef 11 * distributed under the License is distributed on an "AS IS" BASIS,
rgrover1 388:db85a09c27ef 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
rgrover1 388:db85a09c27ef 13 * See the License for the specific language governing permissions and
rgrover1 388:db85a09c27ef 14 * limitations under the License.
rgrover1 388:db85a09c27ef 15 */
rgrover1 388:db85a09c27ef 16
rgrover1 388:db85a09c27ef 17 #include "nRF5xGattClient.h"
rgrover1 388:db85a09c27ef 18
rgrover1 388:db85a09c27ef 19 nRF5xGattClient &
rgrover1 388:db85a09c27ef 20 nRF5xGattClient::getInstance(void) {
rgrover1 456:da0323feba9b 21 static nRF5xGattClient* nRFGattClientSingleton = NULL;
rgrover1 456:da0323feba9b 22 if (nRFGattClientSingleton == NULL) {
rgrover1 456:da0323feba9b 23 nRFGattClientSingleton = new nRF5xGattClient();
rgrover1 456:da0323feba9b 24 }
rgrover1 456:da0323feba9b 25 return *nRFGattClientSingleton;
rgrover1 388:db85a09c27ef 26 }
rgrover1 388:db85a09c27ef 27
rgrover1 455:e33de7c4574c 28 #if !defined(TARGET_MCU_NRF51_16K_S110) && !defined(TARGET_MCU_NRF51_32K_S110)
rgrover1 388:db85a09c27ef 29 ble_error_t
rgrover1 388:db85a09c27ef 30 nRF5xGattClient::launchServiceDiscovery(Gap::Handle_t connectionHandle,
rgrover1 388:db85a09c27ef 31 ServiceDiscovery::ServiceCallback_t sc,
rgrover1 388:db85a09c27ef 32 ServiceDiscovery::CharacteristicCallback_t cc,
rgrover1 388:db85a09c27ef 33 const UUID &matchingServiceUUIDIn,
rgrover1 388:db85a09c27ef 34 const UUID &matchingCharacteristicUUIDIn)
rgrover1 388:db85a09c27ef 35 {
rgrover1 388:db85a09c27ef 36 return discovery.launch(connectionHandle, sc, cc, matchingServiceUUIDIn, matchingCharacteristicUUIDIn);
rgrover1 430:db7edc9ad0bc 37 }
rgrover1 430:db7edc9ad0bc 38 #endif