Kenji Arai / TYBLE16_mbedlized_os5_several_examples_1st

Dependencies:   nRF51_Vdd TextLCD BME280

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers util.h Source File

util.h

00001 /* mbed Microcontroller Library
00002  * Copyright (c) 2018 ARM Limited
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *     http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00017 #ifndef FEATURES_NFC_SOURCE_NFC_COMMON_UTIL_H_
00018 #define FEATURES_NFC_SOURCE_NFC_COMMON_UTIL_H_
00019 
00020 #include "platform/Span.h"
00021 
00022 namespace mbed {
00023 namespace nfc {
00024 namespace ndef {
00025 namespace common {
00026 
00027 /**
00028  * @addtogroup nfc
00029  * @{
00030  */
00031 
00032 /**
00033  * Convert a C-string into a Span<const uint8_t>.
00034  *
00035  * @note The NULL charactere is not present in the resulting object.
00036  *
00037  * @param cstr The cstr to convert into a Span.
00038  *
00039  * @return A Span that views cstr but doesn't include the NULL terminator
00040  * character.
00041  */
00042 template<size_t N>
00043 Span < const uint8_t, N - 1 > span_from_cstr(const char (&cstr)[N])
00044 {
00045     return Span < const uint8_t, N - 1 > ((const uint8_t *)cstr, N - 1);
00046 }
00047 
00048 /**
00049  * Convert a C-string into a Span<const uint8_t>.
00050  *
00051  * @note The NULL charactere is not present in the resulting object.
00052  *
00053  * @param cstr The cstr to convert into a Span.
00054  *
00055  * @return A Span that views cstr but doesn't include the NULL terminator
00056  * character.
00057  */
00058 Span<const uint8_t>  span_from_cstr(const char *cstr);
00059 
00060 /**
00061  * @}
00062  */
00063 
00064 } // namespace common
00065 } // namespace ndef
00066 } // namespace nfc
00067 } // namespace mbed
00068 
00069 #endif /* FEATURES_NFC_SOURCE_NFC_COMMON_UTIL_H_ */