MemoryManager.h
Go to the documentation of this file.
1#pragma once
2
3// STD / STL
4#include <mutex>
5#include <optional>
6
7// Base Class
8#include "../MemoryBase.h"
9
10// Data
11#include "ConnectionManager.h"
12
14{
15 /// @brief A memory storing data in mongodb (needs 'armarx memory start' to start the mongod instance)
16 class Memory : public MemoryBase
17 {
18 using Base = MemoryBase;
19
20 public:
21 using Base::convert;
22 using Base::MemoryBase;
23
24 Memory() = default;
25
26 void reload() override;
27 void convert(armem::wm::Memory&) override;
28 void encodeAndStore() override;
29
30 private:
31 PoolClientPtr checkConnection() const; // return nullptr if not possible
32
33 public:
35
36 private:
37 };
38} // namespace armarx::armem::server::ltm::mongodb
ConnectionManager::MongoDBSettings dbsettings
void convert(armem::wm::Memory &) override
Client-side working memory.