For with fix for disconnection notifications

Fork of nRF51822 by Nordic Semiconductor

Committer:
Rohit Grover
Date:
Thu Jun 26 14:58:41 2014 +0100
Revision:
33:8efbbf54b66f
Parent:
22:c6ee8136847e
Child:
44:47da5c62e067
disabling the persistent storage module; will be re-enabled as necessary
Is needed only for storing bonding information.
Was taking up excessive amounts of RAM.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Rohit Grover 22:c6ee8136847e 1 /* mbed Microcontroller Library
Rohit Grover 22:c6ee8136847e 2 * Copyright (c) 2006-2013 ARM Limited
Rohit Grover 22:c6ee8136847e 3 *
Rohit Grover 22:c6ee8136847e 4 * Licensed under the Apache License, Version 2.0 (the "License");
Rohit Grover 22:c6ee8136847e 5 * you may not use this file except in compliance with the License.
Rohit Grover 22:c6ee8136847e 6 * You may obtain a copy of the License at
Rohit Grover 22:c6ee8136847e 7 *
Rohit Grover 22:c6ee8136847e 8 * http://www.apache.org/licenses/LICENSE-2.0
Rohit Grover 22:c6ee8136847e 9 *
Rohit Grover 22:c6ee8136847e 10 * Unless required by applicable law or agreed to in writing, software
Rohit Grover 22:c6ee8136847e 11 * distributed under the License is distributed on an "AS IS" BASIS,
Rohit Grover 22:c6ee8136847e 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Rohit Grover 22:c6ee8136847e 13 * See the License for the specific language governing permissions and
Rohit Grover 22:c6ee8136847e 14 * limitations under the License.
Rohit Grover 22:c6ee8136847e 15 */
Rohit Grover 22:c6ee8136847e 16
Rohit Grover 22:c6ee8136847e 17 #ifndef __NRF51822_GAP_H__
Rohit Grover 22:c6ee8136847e 18 #define __NRF51822_GAP_H__
Rohit Grover 22:c6ee8136847e 19
Rohit Grover 22:c6ee8136847e 20 #include "mbed.h"
Rohit Grover 22:c6ee8136847e 21 #include "blecommon.h"
Rohit Grover 22:c6ee8136847e 22 #include "ble.h"
Rohit Grover 22:c6ee8136847e 23 #include "GapAdvertisingParams.h"
Rohit Grover 22:c6ee8136847e 24 #include "GapAdvertisingData.h"
Rohit Grover 22:c6ee8136847e 25 #include "hw/Gap.h"
Rohit Grover 22:c6ee8136847e 26
Rohit Grover 22:c6ee8136847e 27 /**************************************************************************/
Rohit Grover 22:c6ee8136847e 28 /*!
Rohit Grover 22:c6ee8136847e 29 \brief
Rohit Grover 22:c6ee8136847e 30
Rohit Grover 22:c6ee8136847e 31 */
Rohit Grover 22:c6ee8136847e 32 /**************************************************************************/
Rohit Grover 22:c6ee8136847e 33 class nRF51Gap : public Gap
Rohit Grover 22:c6ee8136847e 34 {
Rohit Grover 22:c6ee8136847e 35 public:
Rohit Grover 22:c6ee8136847e 36 static nRF51Gap &getInstance() {
Rohit Grover 22:c6ee8136847e 37 static nRF51Gap m_instance;
Rohit Grover 22:c6ee8136847e 38 return m_instance;
Rohit Grover 22:c6ee8136847e 39 }
Rohit Grover 22:c6ee8136847e 40
Rohit Grover 22:c6ee8136847e 41 /* Functions that must be implemented from Gap */
Rohit Grover 22:c6ee8136847e 42 virtual ble_error_t setAddress(addr_type_t type,
Rohit Grover 22:c6ee8136847e 43 const uint8_t address[6]);
Rohit Grover 22:c6ee8136847e 44 virtual ble_error_t setAdvertisingData(const GapAdvertisingData &,
Rohit Grover 22:c6ee8136847e 45 const GapAdvertisingData &);
Rohit Grover 22:c6ee8136847e 46 virtual ble_error_t startAdvertising(const GapAdvertisingParams &);
Rohit Grover 22:c6ee8136847e 47 virtual ble_error_t stopAdvertising(void);
Rohit Grover 22:c6ee8136847e 48 virtual ble_error_t disconnect(void);
Rohit Grover 22:c6ee8136847e 49
Rohit Grover 22:c6ee8136847e 50 void setConnectionHandle(uint16_t con_handle);
Rohit Grover 22:c6ee8136847e 51 uint16_t getConnectionHandle(void);
Rohit Grover 22:c6ee8136847e 52
Rohit Grover 22:c6ee8136847e 53 private:
Rohit Grover 22:c6ee8136847e 54 uint16_t m_connectionHandle;
Rohit Grover 22:c6ee8136847e 55 nRF51Gap() {
Rohit Grover 22:c6ee8136847e 56 m_connectionHandle = BLE_CONN_HANDLE_INVALID;
Rohit Grover 22:c6ee8136847e 57 }
Rohit Grover 22:c6ee8136847e 58
Rohit Grover 22:c6ee8136847e 59 nRF51Gap(nRF51Gap const &);
Rohit Grover 22:c6ee8136847e 60 void operator=(nRF51Gap const &);
Rohit Grover 22:c6ee8136847e 61 };
Rohit Grover 22:c6ee8136847e 62
Rohit Grover 22:c6ee8136847e 63 #endif // ifndef __NRF51822_GAP_H__