My Project
mcu-uuid-common
src
read_flash_string.cpp
1
/*
2
* uuid-common - Microcontroller common utilities
3
* Copyright 2019 Simon Arlott
4
*
5
* This program is free software: you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation, either version 3 of the License, or
8
* (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#include <uuid/common.h>
20
21
#include <Arduino.h>
22
23
#include <string>
24
25
namespace
uuid
{
26
27
std::string
read_flash_string
(
const
__FlashStringHelper *flash_str) {
28
std::string str(::strlen_P(
reinterpret_cast<
PGM_P
>
(flash_str)),
'\0'
);
29
30
::strncpy_P(&str[0],
reinterpret_cast<
PGM_P
>
(flash_str), str.capacity() + 1);
31
32
return
str;
33
}
34
35
}
// namespace uuid
uuid::read_flash_string
std::string read_flash_string(const __FlashStringHelper *flash_str)
Read a string from flash and convert it to a std::string.
Definition:
read_flash_string.cpp:27
uuid
Common utilities.
Definition:
get_uptime_ms.cpp:28
Generated by
1.8.17