41 const std::string MemoryGrapher::defaultName =
"MemoryGrapher";
50 def->topic(graphTopic,
"MemoryGraphTopic");
107 MemoryGrapher::run(
const std::string& memoryID)
114 finished.store(
true, std::memory_order_release);
120 if (worker.joinable())
129 if (worker.joinable())
154 tab.memoryID.setValue(
"");
155 tab.memoryID.setName(
"Memory ID");
157 tab.createGraph.setLabel(
"Create Graph");
161 HBoxLayout root = {tab.memoryID, tab.createGraph};
168 if (tab.createGraph.wasClicked())
170 std::string memoryID = tab.memoryID.getValue();
172 if (worker.joinable())
174 if (finished.load(std::memory_order_acquire))
183 finished.store(
false, std::memory_order_release);
184 worker = std::thread([
this, memoryID]() { this->run(memoryID); });
#define ARMARX_REGISTER_COMPONENT_EXECUTABLE(ComponentT, applicationName)
Default component property definition container.
std::string getConfigIdentifier()
Retrieve config identifier for this component as set in constructor.
std::string getName() const
Retrieve name of object.
static MemoryID fromString(const std::string &string)
Alias for constructor from string.
MemoryNameSystem & memoryNameSystem()
void onInitComponent() override
void onDisconnectComponent() override
void RemoteGui_update() override
After calling RemoteGui_startRunningTask, this function is called periodically in a separate thread.
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
void onConnectComponent() override
static std::string GetDefaultName()
void onExitComponent() override
void createRemoteGuiTab()
This function should be called once in onConnect() or when you need to re-create the Remote GUI tab.
std::string getDefaultName() const override
Retrieve default name of component.
semrel::RelationGraph< MemoryVertex, MemoryEdge, MemoryGraphAttributes > MemoryGraph
data::Graph toIce(const semrel::AttributedGraph &input)
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
void RemoteGui_startRunningTask()
void RemoteGui_createTab(std::string const &name, RemoteGui::Client::Widget const &rootWidget, RemoteGui::Client::Tab *tab)