libs
libuavcan
libuavcan
test
protocol
dynamic_node_id_server
memory_storage_backend.hpp
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2015 Pavel Kirienko <pavel.kirienko@gmail.com>
3
*/
4
5
#pragma once
6
7
#include <map>
8
#include <
uavcan/protocol/dynamic_node_id_server/storage_backend.hpp
>
9
10
class
MemoryStorageBackend
:
public
uavcan::dynamic_node_id_server::IStorageBackend
11
{
12
typedef
std::map<String, String>
Container
;
13
Container
container_
;
14
15
bool
fail_
;
16
17
public
:
18
MemoryStorageBackend
()
19
:
fail_
(false)
20
{ }
21
22
virtual
String
get
(
const
String
& key)
const
23
{
24
const
Container::const_iterator it =
container_
.find(key);
25
if
(it ==
container_
.end())
26
{
27
return
String
();
28
}
29
return
it->second;
30
}
31
32
virtual
void
set
(
const
String
& key,
const
String
& value)
33
{
34
if
(!
fail_
)
35
{
36
container_
[key] = value;
37
}
38
}
39
40
void
failOnSetCalls
(
bool
really) {
fail_
= really; }
41
42
void
reset
() {
container_
.clear(); }
43
44
unsigned
getNumKeys
()
const
{
return
unsigned(
container_
.size()); }
45
46
void
print
()
const
47
{
48
for
(Container::const_iterator it =
container_
.begin(); it !=
container_
.end(); ++it)
49
{
50
std::cout << it->first.c_str() <<
"\t"
<< it->second.c_str() << std::endl;
51
}
52
}
53
};
uavcan::dynamic_node_id_server::IStorageBackend::String
MakeString< MaxStringLength >::Type String
Definition:
storage_backend.hpp:40
MemoryStorageBackend::container_
Container container_
Definition:
memory_storage_backend.hpp:13
MemoryStorageBackend::print
void print() const
Definition:
memory_storage_backend.hpp:46
MemoryStorageBackend::MemoryStorageBackend
MemoryStorageBackend()
Definition:
memory_storage_backend.hpp:18
MemoryStorageBackend::reset
void reset()
Definition:
memory_storage_backend.hpp:42
storage_backend.hpp
uavcan::Array
Definition:
array.hpp:424
uavcan::dynamic_node_id_server::IStorageBackend
Definition:
storage_backend.hpp:22
MemoryStorageBackend::set
virtual void set(const String &key, const String &value)
Definition:
memory_storage_backend.hpp:32
MemoryStorageBackend::Container
std::map< String, String > Container
Definition:
memory_storage_backend.hpp:12
MemoryStorageBackend::get
virtual String get(const String &key) const
Definition:
memory_storage_backend.hpp:22
MemoryStorageBackend::fail_
bool fail_
Definition:
memory_storage_backend.hpp:15
MemoryStorageBackend
Definition:
memory_storage_backend.hpp:10
MemoryStorageBackend::getNumKeys
unsigned getNumKeys() const
Definition:
memory_storage_backend.hpp:44
MemoryStorageBackend::failOnSetCalls
void failOnSetCalls(bool really)
Definition:
memory_storage_backend.hpp:40
uavcan_communicator
Author(s):
autogenerated on Fri Dec 13 2024 03:10:02