Example program for mbed Cloud Bluetooth Devicelink
source/GroveLedService.h
- Committer:
- Jan Jongboom
- Date:
- 2017-05-01
- Revision:
- 0:cfbdc6a35374
File content as of revision 0:cfbdc6a35374:
/* 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 __BLE_GROVE_LED_SERVICE_H__
#define __BLE_GROVE_LED_SERVICE_H__
class GroveLEDService {
public:
const static uint16_t LED_SERVICE_UUID = 0xB000;
const static uint16_t LED_STATE_CHARACTERISTIC_UUID = 0xB001;
GroveLEDService(BLEDevice &_ble, uint32_t initialValueForLEDCharacteristic) :
ble(_ble), ledState(LED_STATE_CHARACTERISTIC_UUID, &initialValueForLEDCharacteristic)
{
GattCharacteristic *charTable[] = {&ledState};
GattService ledService(LED_SERVICE_UUID, charTable, sizeof(charTable) / sizeof(GattCharacteristic *));
ble.addService(ledService);
}
GattAttribute::Handle_t getValueHandle() const
{
return ledState.getValueHandle();
}
private:
BLEDevice &ble;
ReadWriteGattCharacteristic<uint32_t> ledState;
};
#endif /* #ifndef __BLE_GROVE_LED_SERVICE_H__ */