nrf51822/source/nRF5xn.h

73 lines
2.1 KiB
C
Raw Normal View History

2014-07-30 10:36:32 +00:00
/* mbed Microcontroller Library
* Copyright (c) 2006-2013 ARM Limited
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef __NRF51822_H__
#define __NRF51822_H__
#include "ble/BLE.h"
#include "ble/blecommon.h"
#include "ble/BLEInstanceBase.h"
#include "nRF5xGap.h"
#include "nRF5xGattServer.h"
#include "nRF5xGattClient.h"
#include "nRF5xSecurityManager.h"
2015-04-14 12:25:19 +00:00
#include "btle.h"
2014-07-30 10:36:32 +00:00
class nRF5xn : public BLEInstanceBase
2014-07-30 10:36:32 +00:00
{
public:
nRF5xn(void);
virtual ~nRF5xn(void);
2014-07-30 10:36:32 +00:00
virtual ble_error_t init(BLE::InstanceID_t instanceID, FunctionPointerWithContext<BLE::InitializationCompleteCallbackContext *> callback);
virtual bool hasInitialized(void) const {
return initialized;
}
2015-06-19 07:28:35 +00:00
virtual ble_error_t shutdown(void);
2014-07-30 10:36:32 +00:00
virtual const char *getVersion(void);
2015-06-18 20:27:29 +00:00
virtual Gap &getGap() {
return nRF5xGap::getInstance();
2014-07-30 10:36:32 +00:00
};
2015-06-18 20:27:29 +00:00
virtual const Gap &getGap() const {
return nRF5xGap::getInstance();
};
2014-07-30 10:36:32 +00:00
virtual GattServer &getGattServer() {
return nRF5xGattServer::getInstance();
2014-07-30 10:36:32 +00:00
};
virtual const GattServer &getGattServer() const {
return nRF5xGattServer::getInstance();
};
virtual GattClient &getGattClient() {
return nRF5xGattClient::getInstance();
}
2015-06-19 07:28:35 +00:00
virtual const SecurityManager &getSecurityManager() const {
return nRF5xSecurityManager::getInstance();
2015-06-19 07:28:35 +00:00
}
virtual SecurityManager &getSecurityManager() {
return nRF5xSecurityManager::getInstance();
}
virtual void waitForEvent(void);
private:
bool initialized;
BLE::InstanceID_t instanceID;
2014-07-30 10:36:32 +00:00
};
#endif