BLE API as used in the blog entry.

Dependents:   BLE_iBeacon_Exercise

Fork of BLE_API_Native by Kevin Townsend

Committer:
ktownsend
Date:
Thu Feb 06 11:51:06 2014 +0000
Revision:
0:4c3097c65247
Native mode drivers

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ktownsend 0:4c3097c65247 1 /* mbed Microcontroller Library
ktownsend 0:4c3097c65247 2 * Copyright (c) 2006-2013 ARM Limited
ktownsend 0:4c3097c65247 3 *
ktownsend 0:4c3097c65247 4 * Licensed under the Apache License, Version 2.0 (the "License");
ktownsend 0:4c3097c65247 5 * you may not use this file except in compliance with the License.
ktownsend 0:4c3097c65247 6 * You may obtain a copy of the License at
ktownsend 0:4c3097c65247 7 *
ktownsend 0:4c3097c65247 8 * http://www.apache.org/licenses/LICENSE-2.0
ktownsend 0:4c3097c65247 9 *
ktownsend 0:4c3097c65247 10 * Unless required by applicable law or agreed to in writing, software
ktownsend 0:4c3097c65247 11 * distributed under the License is distributed on an "AS IS" BASIS,
ktownsend 0:4c3097c65247 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
ktownsend 0:4c3097c65247 13 * See the License for the specific language governing permissions and
ktownsend 0:4c3097c65247 14 * limitations under the License.
ktownsend 0:4c3097c65247 15 */
ktownsend 0:4c3097c65247 16
ktownsend 0:4c3097c65247 17
ktownsend 0:4c3097c65247 18 #ifndef __UUID_H__
ktownsend 0:4c3097c65247 19 #define __UUID_H__
ktownsend 0:4c3097c65247 20
ktownsend 0:4c3097c65247 21 #include "blecommon.h"
ktownsend 0:4c3097c65247 22
ktownsend 0:4c3097c65247 23 class UUID
ktownsend 0:4c3097c65247 24 {
ktownsend 0:4c3097c65247 25 private:
ktownsend 0:4c3097c65247 26
ktownsend 0:4c3097c65247 27 public:
ktownsend 0:4c3097c65247 28 enum
ktownsend 0:4c3097c65247 29 {
ktownsend 0:4c3097c65247 30 UUID_TYPE_SHORT = 0, // Short BLE UUID
ktownsend 0:4c3097c65247 31 UUID_TYPE_LONG = 1 // Full 128-bit UUID
ktownsend 0:4c3097c65247 32 };
ktownsend 0:4c3097c65247 33
ktownsend 0:4c3097c65247 34 UUID(void);
ktownsend 0:4c3097c65247 35 UUID(uint8_t const[16]);
ktownsend 0:4c3097c65247 36 UUID(uint16_t const);
ktownsend 0:4c3097c65247 37 virtual ~UUID(void);
ktownsend 0:4c3097c65247 38
ktownsend 0:4c3097c65247 39 uint8_t type; // UUID_TYPE_SHORT or UUID_TYPE_LONG
ktownsend 0:4c3097c65247 40 uint8_t base[16]; // in case of custom
ktownsend 0:4c3097c65247 41 uint16_t value; // 16 bit uuid (byte 2-3 using with base)
ktownsend 0:4c3097c65247 42
ktownsend 0:4c3097c65247 43 ble_error_t update(uint8_t const[16]);
ktownsend 0:4c3097c65247 44 ble_error_t update(uint16_t const);
ktownsend 0:4c3097c65247 45 };
ktownsend 0:4c3097c65247 46
ktownsend 0:4c3097c65247 47 #endif