diff --git a/source/RobotAPI/interface/armem/server/ArticulatedObjectMemoryInterface.ice b/source/RobotAPI/interface/armem/server/ArticulatedObjectMemoryInterface.ice new file mode 100644 index 0000000000000000000000000000000000000000..cd27341d40d096aabe7dc6405a23bbd84d26352d --- /dev/null +++ b/source/RobotAPI/interface/armem/server/ArticulatedObjectMemoryInterface.ice @@ -0,0 +1,72 @@ +/* + * This file is part of ArmarX. + * + * ArmarX is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * ArmarX is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * + * @author Fabian Reister ( fabian dot reister at kit dot edu ) + * @date 2021 + * @copyright http://www.gnu.org/licenses/gpl-2.0.txt + * GNU General Public License + */ + +#pragma once + +#include <RobotAPI/interface/armem/server/MemoryInterface.ice> + +#include <RobotAPI/interface/objectpose/ObjectPoseStorageInterface.ice> + +module armarx +{ + + module articulated_object + { + + interface ArticulatedObjectPoseStorageInterface extends + armarx::articulated_object::ArticulatedObjectTopic + { + // Object poses + + data::ArticulatedObjects getArticulatedObjects(); + data::ArticulatedObjects getArticulatedObjectsByProvider(string providerName); + + // Provider information + + bool hasProvider(string providerName); + Ice::StringSeq getAvailableProviderNames(); + // ProviderInfoMap getAvailableProvidersInfo(); + // ProviderInfo getProviderInfo(string providerName); + + // Requesting + + //observer::RequestObjectsOutput requestArticulatedObjects( + // observer::RequestObjectsInput input); + }; + } + + module armem + { + module server + { + + interface ArticulatedObjectInstanceSegmentInterface extends + armarx::objpose::ObjectPoseStorageInterface{ + + }; + + interface ArticulatedObjectMemoryInterface extends MemoryInterface, + ArticulatedObjectInstanceSegmentInterface{ + + }; + }; + }; +};