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>
9 
11 {
12  typedef std::map<String, String> Container;
14 
15  bool fail_;
16 
17 public:
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