diff --git a/source/RobotAPI/libraries/armem/mns/Client.cpp b/source/RobotAPI/libraries/armem/mns/Client.cpp index 5eedec3b53757b31b94ab36d68db81ddf00c0587..12d2ac976f710774e4473eb49e67ec6c35fac9af 100644 --- a/source/RobotAPI/libraries/armem/mns/Client.cpp +++ b/source/RobotAPI/libraries/armem/mns/Client.cpp @@ -104,26 +104,43 @@ namespace armarx::armem::mns return server; } + + server::MemoryInterfacePrx Client::useServer(const std::string& memoryName) + { + return useServer(MemoryID().withMemoryName(memoryName)); + } + + + server::MemoryInterfacePrx Client::useServer(const std::string& memoryName, ManagedIceObject& component) + { + return useServer(MemoryID().withMemoryName(memoryName), component); + } + + client::Reader Client::getReader(const MemoryID& memoryID) { return client::Reader(resolveServer(memoryID)); } + client::Reader Client::useReader(const MemoryID& memoryID) { return client::Reader(useServer(memoryID)); } + client::Reader Client::useReader(const MemoryID& memoryID, ManagedIceObject& component) { return client::Reader(useServer(memoryID, component)); } + client::Reader Client::useReader(const std::string& memoryName) { return useReader(MemoryID().withMemoryName(memoryName)); } + client::Reader Client::useReader(const std::string& memoryName, ManagedIceObject& component) { return useReader(MemoryID().withMemoryName(memoryName), component); @@ -170,21 +187,25 @@ namespace armarx::armem::mns return client::Writer(resolveServer(memoryID)); } + client::Writer Client::useWriter(const MemoryID& memoryID) { return client::Writer(useServer(memoryID)); } + client::Writer Client::useWriter(const MemoryID& memoryID, ManagedIceObject& component) { return client::Writer(useServer(memoryID, component)); } + client::Writer Client::useWriter(const std::string& memoryName) { return useWriter(MemoryID().withMemoryName(memoryName)); } + client::Writer Client::useWriter(const std::string& memoryName, ManagedIceObject& component) { return useWriter(MemoryID().withMemoryName(memoryName), component); diff --git a/source/RobotAPI/libraries/armem/mns/Client.h b/source/RobotAPI/libraries/armem/mns/Client.h index 8ceb4984d4ec2182793c94373b55d4d9382c5b5d..5253030801f120bb5a6cc223900f912e0aae83d9 100644 --- a/source/RobotAPI/libraries/armem/mns/Client.h +++ b/source/RobotAPI/libraries/armem/mns/Client.h @@ -120,6 +120,8 @@ namespace armarx::armem::mns */ server::MemoryInterfacePrx useServer(const MemoryID& memoryID); server::MemoryInterfacePrx useServer(const MemoryID& memoryID, ManagedIceObject& component); + server::MemoryInterfacePrx useServer(const std::string& memoryName); + server::MemoryInterfacePrx useServer(const std::string& memoryName, ManagedIceObject& component); // Client reader/writer construction @@ -134,6 +136,7 @@ namespace armarx::armem::mns */ client::Reader getReader(const MemoryID& memoryID); + /// Use a memory server and get a reader for it. client::Reader useReader(const MemoryID& memoryID); client::Reader useReader(const MemoryID& memoryID, ManagedIceObject& component); client::Reader useReader(const std::string& memoryName); @@ -147,9 +150,8 @@ namespace armarx::armem::mns */ std::map<std::string, client::Reader> getAllReaders(bool update = true); /** - * @brief Get Readers for all registered servers. + * @brief Get Readers for all registered servers (without updating). * - * @param update If true, perform an update first. * @return The readers. */ std::map<std::string, client::Reader> getAllReaders() const; @@ -165,6 +167,7 @@ namespace armarx::armem::mns */ client::Writer getWriter(const MemoryID& memoryID); + /// Use a memory server and get a writer for it. client::Writer useWriter(const MemoryID& memoryID); client::Writer useWriter(const MemoryID& memoryID, ManagedIceObject& component); client::Writer useWriter(const std::string& memoryName); @@ -178,7 +181,7 @@ namespace armarx::armem::mns */ std::map<std::string, client::Writer> getAllWriters(bool update = true); /** - * @brief Get Writers for all registered servers. + * @brief Get Writers for all registered servers (without updating). * * @return The readers. */