None
Fork of nRF51822 by
Diff: source/nRF5xGap.cpp
- Revision:
- 566:e425ad9e5d6e
- Parent:
- 565:cf03471a4ec4
- Child:
- 567:e1800bd55a9e
diff -r cf03471a4ec4 -r e425ad9e5d6e source/nRF5xGap.cpp --- a/source/nRF5xGap.cpp Mon Jan 11 10:19:18 2016 +0000 +++ b/source/nRF5xGap.cpp Mon Jan 11 10:19:18 2016 +0000 @@ -14,17 +14,20 @@ * limitations under the License. */ -#include "nRF5xn.h" +#include "nRF5xGap.h" #include "mbed.h" -#include "ble/BLE.h" #include "common/common.h" #include "ble_advdata.h" #include "ble_hci.h" +nRF5xGap &nRF5xGap::getInstance() { + static nRF5xGap m_instance; + return m_instance; +} + void radioNotificationStaticCallback(bool param) { - nRF5xGap &gap = (nRF5xGap &) nRF5xn::Instance(BLE::DEFAULT_INSTANCE).getGap(); - gap.processRadioNotificationEvent(param); + nRF5xGap::getInstance().processRadioNotificationEvent(param); } /**************************************************************************/ @@ -335,29 +338,6 @@ /**************************************************************************/ /*! - @brief Clear nRF5xGap's state. - - @returns ble_error_t - - @retval BLE_ERROR_NONE - Everything executed properly -*/ -/**************************************************************************/ -ble_error_t nRF5xGap::reset(void) -{ - /* Clear all state that is from the parent, including private members */ - if (Gap::reset() != BLE_ERROR_NONE) { - return BLE_ERROR_INVALID_STATE; - } - - /* Clear derived class members */ - m_connectionHandle = BLE_CONN_HANDLE_INVALID; - - return BLE_ERROR_NONE; -} - -/**************************************************************************/ -/*! @brief Sets the 16-bit connection handle */ /**************************************************************************/ @@ -387,7 +367,7 @@ @code uint8_t device_address[6] = { 0xca, 0xfe, 0xf0, 0xf0, 0xf0, 0xf0 }; - nrf.getGap().setAddress(Gap::ADDR_TYPE_RANDOM_STATIC, device_address); + nrf.getGap().setAddress(Gap::BLEProtocol::AddressType::RANDOM_STATIC, device_address); @endcode */ @@ -401,12 +381,12 @@ When using Random Private addresses, the cycle mode must be Auto. In auto mode, the given address is ignored. */ - if ((type == ADDR_TYPE_PUBLIC) || (type == ADDR_TYPE_RANDOM_STATIC)) + if ((type == BLEProtocol::AddressType::PUBLIC) || (type == BLEProtocol::AddressType::RANDOM_STATIC)) { cycle_mode = BLE_GAP_ADDR_CYCLE_MODE_NONE; memcpy(dev_addr.addr, address, ADDR_LEN); } - else if ((type == ADDR_TYPE_RANDOM_PRIVATE_RESOLVABLE) || (type == ADDR_TYPE_RANDOM_PRIVATE_NON_RESOLVABLE)) + else if ((type == BLEProtocol::AddressType::RANDOM_PRIVATE_RESOLVABLE) || (type == BLEProtocol::AddressType::RANDOM_PRIVATE_NON_RESOLVABLE)) { cycle_mode = BLE_GAP_ADDR_CYCLE_MODE_AUTO; // address is ignored when in auto mode