MemoryNameSystem.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <map>
4
#include <mutex>
5
#include <string>
6
7
#include <
ArmarXGui/libraries/ArmarXGuiComponentPlugins/LightweightRemoteGuiComponentPlugin.h
>
8
9
#include <RobotAPI/interface/armem/mns/MemoryNameSystemInterface.h>
10
11
#include "
Registry.h
"
12
13
namespace
armarx::armem::mns
14
{
15
16
class
MemoryNameSystem
:
public
Registry
17
{
18
public
:
19
using
WaitForServerFuturePtr
= AMD_MemoryNameSystemInterface_waitForServerPtr;
20
21
22
public
:
23
/**
24
* @brief Store the call in a container for later response.
25
*/
26
void
waitForServer_async
(
const
AMD_MemoryNameSystemInterface_waitForServerPtr& future,
27
const
dto::WaitForServerInput&
input
);
28
29
void
waitForServer_processOnce
();
30
31
dto::RegisterServerResult
registerServer
(
const
dto::RegisterServerInput&
input
)
override
;
32
33
34
/// Builds a RemoteGui grid containing information about registered memories.
35
armarx::RemoteGui::Client::GridLayout
RemoteGui_buildInfoGrid
();
36
37
38
private
:
39
/// Queued calls to `waitForServer`.
40
std::map<std::string, std::vector<WaitForServerFuturePtr>> waitForServerFutures;
41
42
std::mutex futuresMtx;
43
};
44
45
}
// namespace armarx::armem::mns
armarx::armem::mns::MemoryNameSystem::waitForServer_async
void waitForServer_async(const AMD_MemoryNameSystemInterface_waitForServerPtr &future, const dto::WaitForServerInput &input)
Store the call in a container for later response.
Definition:
MemoryNameSystem.cpp:8
armarx::armem::mns::Registry
A registry for memory servers.
Definition:
Registry.h:21
armarx::armem::mns::MemoryNameSystem::waitForServer_processOnce
void waitForServer_processOnce()
Definition:
MemoryNameSystem.cpp:23
LightweightRemoteGuiComponentPlugin.h
armarx::RemoteGui::Client::GridLayout
Definition:
Widgets.h:186
armarx::armem::mns::MemoryNameSystem
Definition:
MemoryNameSystem.h:16
armarx::aron::input
ReaderT::InputType & input
Definition:
rw.h:12
armarx::armem::mns::MemoryNameSystem::RemoteGui_buildInfoGrid
armarx::RemoteGui::Client::GridLayout RemoteGui_buildInfoGrid()
Builds a RemoteGui grid containing information about registered memories.
Definition:
MemoryNameSystem.cpp:65
armarx::armem::mns::MemoryNameSystem::WaitForServerFuturePtr
AMD_MemoryNameSystemInterface_waitForServerPtr WaitForServerFuturePtr
Definition:
MemoryNameSystem.h:19
armarx::armem::mns
Definition:
MemoryNameSystem.cpp:3
Registry.h
armarx::armem::mns::MemoryNameSystem::registerServer
dto::RegisterServerResult registerServer(const dto::RegisterServerInput &input) override
Register a new memory server or update an existing entry.
Definition:
MemoryNameSystem.cpp:56
RobotAPI
libraries
armem
mns
MemoryNameSystem.h
Generated on Sat Mar 29 2025 09:17:25 for armarx_documentation by
1.8.17