diff --git a/source/RobotAPI/libraries/armem_objects/client/articulated_object/Reader.cpp b/source/RobotAPI/libraries/armem_objects/client/articulated_object/Reader.cpp index c554afd52d27cd534b4015eb2c5114ddd8955181..64dfbc7f546bfc887fd408e444ad2332b8a8aaa0 100644 --- a/source/RobotAPI/libraries/armem_objects/client/articulated_object/Reader.cpp +++ b/source/RobotAPI/libraries/armem_objects/client/articulated_object/Reader.cpp @@ -146,7 +146,7 @@ namespace armarx::armem::articulated_object return obj; } - void + bool Reader::synchronize(ArticulatedObject& obj, const armem::Time& timestamp) { ARMARX_CHECK_NOT_EMPTY(obj.instance) << "An instance name must be provided!"; @@ -156,10 +156,11 @@ namespace armarx::armem::articulated_object if (not state) /* c++20 [[unlikely]] */ { ARMARX_WARNING << "Could not synchronize object " << obj.instance; - return; + return false; } obj.config = std::move(*state); + return true; } std::vector<robot::RobotDescription> diff --git a/source/RobotAPI/libraries/armem_objects/client/articulated_object/Reader.h b/source/RobotAPI/libraries/armem_objects/client/articulated_object/Reader.h index 3108b17f9b7054a61290a4647d5d3965f17d2fbd..91a38432faba65f7fe4404986042d1c953c75f70 100644 --- a/source/RobotAPI/libraries/armem_objects/client/articulated_object/Reader.h +++ b/source/RobotAPI/libraries/armem_objects/client/articulated_object/Reader.h @@ -45,7 +45,7 @@ namespace armarx::armem::articulated_object void registerPropertyDefinitions(armarx::PropertyDefinitionsPtr& def); void connect(); - void synchronize(ArticulatedObject& obj, const armem::Time& timestamp) override; + bool synchronize(ArticulatedObject& obj, const armem::Time& timestamp) override; std::optional<ArticulatedObject> get(const std::string& name, const armem::Time& timestamp) override; diff --git a/source/RobotAPI/libraries/armem_objects/client/articulated_object/interfaces.h b/source/RobotAPI/libraries/armem_objects/client/articulated_object/interfaces.h index a3061a553cb545605ce37febf9632d6c73d50cda..d7e74a9a02db0d58d4a24ef3f88658b3d13ca57a 100644 --- a/source/RobotAPI/libraries/armem_objects/client/articulated_object/interfaces.h +++ b/source/RobotAPI/libraries/armem_objects/client/articulated_object/interfaces.h @@ -11,7 +11,7 @@ namespace armarx::armem::articulated_object public: virtual ~ReaderInterface() = default; - virtual void synchronize(ArticulatedObject& obj, const armem::Time& timestamp) = 0; + virtual bool synchronize(ArticulatedObject& obj, const armem::Time& timestamp) = 0; virtual ArticulatedObject get(const ArticulatedObjectDescription& description, const armem::Time& timestamp, const std::string& instanceName) = 0; virtual std::optional<ArticulatedObject> get(const std::string& name, const armem::Time& timestamp) = 0;