diff --git a/CMakeLists.txt b/CMakeLists.txt index 8d684da402ca704e30e1d7219a24accd0e5f1742..100538b7b7a1e37d867cadf03cd1c6fe8240bb39 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,6 +17,9 @@ set(ARMARX_ENABLE_AUTO_CODE_FORMATTING TRUE) armarx_project("RobotAPI") depends_on_armarx_package(ArmarXGui) +find_package(DMP QUIET) + + add_subdirectory(source) install_project() diff --git a/source/RobotAPI/components/armem/addon/LegacyRobotStateMemoryAdapter/CMakeLists.txt b/source/RobotAPI/components/armem/addon/LegacyRobotStateMemoryAdapter/CMakeLists.txt index 9340296c089e80e1be44039534555519936551ba..7f3ad39c47742664118f7f4de02a32d6d85aa8a2 100644 --- a/source/RobotAPI/components/armem/addon/LegacyRobotStateMemoryAdapter/CMakeLists.txt +++ b/source/RobotAPI/components/armem/addon/LegacyRobotStateMemoryAdapter/CMakeLists.txt @@ -9,7 +9,9 @@ armarx_add_component( LIBS ArmarXCore ArmarXCoreInterfaces # for DebugObserverInterface ArmarXGuiComponentPlugins - RobotAPICore RobotAPIInterfaces armem armem_robot_state + RobotAPICore RobotAPIInterfaces + RobotAPI::armem + armem_robot_state ) #generate the application diff --git a/source/RobotAPI/components/armem/client/ExampleMemoryClient/CMakeLists.txt b/source/RobotAPI/components/armem/client/ExampleMemoryClient/CMakeLists.txt index 667e5d5ad070e08f331d505fa4e742ce61b39df7..b9434aeb6575293b01482473f3467403e969ab86 100644 --- a/source/RobotAPI/components/armem/client/ExampleMemoryClient/CMakeLists.txt +++ b/source/RobotAPI/components/armem/client/ExampleMemoryClient/CMakeLists.txt @@ -7,7 +7,9 @@ armarx_build_if(OpenCV_FOUND "OpenCV not available") set(COMPONENT_LIBS ArmarXCore ArmarXCoreInterfaces # for DebugObserverInterface ArmarXGuiComponentPlugins - RobotAPICore RobotAPIInterfaces armem aronopencvconverter aronjsonconverter + RobotAPICore RobotAPIInterfaces + armem + aronopencvconverter aronjsonconverter ${OpenCV_LIBRARIES} ) diff --git a/source/RobotAPI/components/armem/client/ExampleMemoryClient/ExampleMemoryClient.cpp b/source/RobotAPI/components/armem/client/ExampleMemoryClient/ExampleMemoryClient.cpp index eae52c5054369e599acebfa5378075b7a448d6e5..d5ffd4c911804296d10c756577b3c573b3174235 100644 --- a/source/RobotAPI/components/armem/client/ExampleMemoryClient/ExampleMemoryClient.cpp +++ b/source/RobotAPI/components/armem/client/ExampleMemoryClient/ExampleMemoryClient.cpp @@ -597,7 +597,6 @@ namespace armarx if (tab.queryResult) { - tab.queryResultGroup = armem::server::MemoryRemoteGui().makeGroupBox(*tab.queryResult); } VBoxLayout root = {tab.queryResultGroup, VSpacer()}; diff --git a/source/RobotAPI/components/armem/server/ExampleMemory/CMakeLists.txt b/source/RobotAPI/components/armem/server/ExampleMemory/CMakeLists.txt index de9b660b2175a34c4cd3aeb90152370f222ceb11..b1a5224421ff0147e3fd990c5c17917334dd61a9 100644 --- a/source/RobotAPI/components/armem/server/ExampleMemory/CMakeLists.txt +++ b/source/RobotAPI/components/armem/server/ExampleMemory/CMakeLists.txt @@ -6,7 +6,8 @@ armarx_build_if(OpenCV_FOUND "OpenCV not available") set(COMPONENT_LIBS ArmarXCore ArmarXCoreInterfaces # for DebugObserverInterface ArmarXGuiComponentPlugins - RobotAPICore RobotAPIInterfaces armem + RobotAPICore RobotAPIInterfaces + armem_server ) set(SOURCES diff --git a/source/RobotAPI/components/armem/server/GeneralPurposeMemory/CMakeLists.txt b/source/RobotAPI/components/armem/server/GeneralPurposeMemory/CMakeLists.txt index f0521043e0891a4b42b3fd75e612b607b3e421aa..278e9c29a43c0d8d42de5d512b128354481d89b9 100644 --- a/source/RobotAPI/components/armem/server/GeneralPurposeMemory/CMakeLists.txt +++ b/source/RobotAPI/components/armem/server/GeneralPurposeMemory/CMakeLists.txt @@ -4,7 +4,7 @@ armarx_component_set_name("GeneralPurposeMemory") set(COMPONENT_LIBS ArmarXCore ArmarXCoreInterfaces # for DebugObserverInterface ArmarXGuiComponentPlugins - RobotAPICore RobotAPIInterfaces armem + RobotAPICore RobotAPIInterfaces armem_server # RobotAPIComponentPlugins # for ArViz and other plugins ${IVT_LIBRARIES} diff --git a/source/RobotAPI/components/armem/server/GraspMemory/CMakeLists.txt b/source/RobotAPI/components/armem/server/GraspMemory/CMakeLists.txt index 7bac572cd11bae463d2349529691f2ff5d6b79b2..6f09f46f79512819800b879bbd7701677fde1118 100644 --- a/source/RobotAPI/components/armem/server/GraspMemory/CMakeLists.txt +++ b/source/RobotAPI/components/armem/server/GraspMemory/CMakeLists.txt @@ -4,7 +4,7 @@ armarx_component_set_name("GraspMemory") set(COMPONENT_LIBS ArmarXCore ArmarXCoreInterfaces # for DebugObserverInterface ArmarXGuiComponentPlugins - RobotAPICore RobotAPIInterfaces armem + RobotAPICore RobotAPIInterfaces armem_server RobotAPIComponentPlugins # for ArViz and other plugins ${IVT_LIBRARIES} diff --git a/source/RobotAPI/components/armem/server/MotionMemory/CMakeLists.txt b/source/RobotAPI/components/armem/server/MotionMemory/CMakeLists.txt index 4b9a866f9c3be383e589ba9e0bafbc60368f0f57..2762e4152f4a3711b4d49fd8022ef5f5a90bcbe4 100644 --- a/source/RobotAPI/components/armem/server/MotionMemory/CMakeLists.txt +++ b/source/RobotAPI/components/armem/server/MotionMemory/CMakeLists.txt @@ -7,21 +7,20 @@ armarx_add_component( ArmarXGuiComponentPlugins RobotAPICore RobotAPIInterfaces - RobotAPI::ArMem - RobotAPI::ArMemMotions - RobotAPI::armem_mps + RobotAPI::armem_server + RobotAPI::armem_motions_server + RobotAPI::armem_mps_server + SOURCES MotionMemory.cpp + HEADERS MotionMemory.h ) # add unit tests -add_subdirectory(test) +# add_subdirectory(test) #generate the application armarx_generate_and_add_component_executable() - - - diff --git a/source/RobotAPI/components/armem/server/ObjectMemory/CMakeLists.txt b/source/RobotAPI/components/armem/server/ObjectMemory/CMakeLists.txt index 1c90c244bf872fdc4931e0b9067a92c189d9b694..ac589f21a49e3b86f01d413b023dc3825fbf9f7c 100644 --- a/source/RobotAPI/components/armem/server/ObjectMemory/CMakeLists.txt +++ b/source/RobotAPI/components/armem/server/ObjectMemory/CMakeLists.txt @@ -8,7 +8,9 @@ set(COMPONENT_LIBS ArmarXGuiComponentPlugins # RobotAPI RobotAPI::ComponentPlugins + RobotAPI::armem_server RobotAPI::armem_objects + RobotAPI::armem_objects_server # This project ${PROJECT_NAME}Interfaces diff --git a/source/RobotAPI/components/armem/server/RobotStateMemory/CMakeLists.txt b/source/RobotAPI/components/armem/server/RobotStateMemory/CMakeLists.txt index f49cb33c231a20857aa30458b4f7f5f14c05acdc..24c6616942f86aa4a6e828675db83f59b14aff72 100644 --- a/source/RobotAPI/components/armem/server/RobotStateMemory/CMakeLists.txt +++ b/source/RobotAPI/components/armem/server/RobotStateMemory/CMakeLists.txt @@ -10,8 +10,8 @@ set(COMPONENT_LIBS # RobotAPI RobotAPICore RobotAPIInterfaces RobotAPIComponentPlugins - armem - armem_robot_state + RobotAPI::armem_server + RobotAPI::armem_robot_state_server ) set(SOURCES diff --git a/source/RobotAPI/components/armem/server/SkillsMemory/CMakeLists.txt b/source/RobotAPI/components/armem/server/SkillsMemory/CMakeLists.txt index eee41fad2917ac3689f98d103f1a927a0715d205..dda3d1f24a956c0d1882af2fea2ef056183abc96 100644 --- a/source/RobotAPI/components/armem/server/SkillsMemory/CMakeLists.txt +++ b/source/RobotAPI/components/armem/server/SkillsMemory/CMakeLists.txt @@ -4,7 +4,7 @@ armarx_component_set_name("SkillsMemory") set(COMPONENT_LIBS ArmarXCore ArmarXCoreInterfaces RobotAPICore RobotAPIInterfaces - armem armem_skills + armem_server armem_skills ${IVT_LIBRARIES} ) diff --git a/source/RobotAPI/gui-plugins/ArMemMemoryViewer/CMakeLists.txt b/source/RobotAPI/gui-plugins/ArMemMemoryViewer/CMakeLists.txt index 7ccd3c5dfe0ca69fc1dbb4f7b48cf854bdff8fa1..c449d1100f0ed75d7ccabe34e7ab6446b2996a1a 100644 --- a/source/RobotAPI/gui-plugins/ArMemMemoryViewer/CMakeLists.txt +++ b/source/RobotAPI/gui-plugins/ArMemMemoryViewer/CMakeLists.txt @@ -22,7 +22,8 @@ set(GUI_UIS # Add more libraries you depend on here, e.g. ${QT_LIBRARIES}. set(COMPONENT_LIBS SimpleConfigDialog - armem armem_gui + RobotAPI::armem + RobotAPI::armem_gui ) if(ArmarXGui_FOUND) diff --git a/source/RobotAPI/libraries/armem/CMakeLists.txt b/source/RobotAPI/libraries/armem/CMakeLists.txt index 18ddb34929d22aacf507a5a162ab65d30245d585..ba231f670b3342011fd228da611d2e9d1b8d87cc 100644 --- a/source/RobotAPI/libraries/armem/CMakeLists.txt +++ b/source/RobotAPI/libraries/armem/CMakeLists.txt @@ -3,26 +3,12 @@ set(LIB_NAME armem) armarx_component_set_name("${LIB_NAME}") armarx_set_target("Library: ${LIB_NAME}") -SET(INSTALL_SCRIPT_MSG - "Please use the installation script in RobotAPI/etc/mongocxx to install libmongocxx and libbsoncxx." -) - -find_package(libmongocxx QUIET) -armarx_build_if(libmongocxx_FOUND "libmongocxx not available. ${INSTALL_SCRIPT_MSG}") -find_package(libbsoncxx QUIET) -armarx_build_if(libbsoncxx_FOUND "libbsoncxx not available. ${INSTALL_SCRIPT_MSG}") - set(LIBS - ArmarXCoreInterfaces ArmarXCore + ArmarXCoreInterfaces + ArmarXCore RemoteGui aron - - # Needed for LTM - RobotAPI::aron::converter::json - RobotAPI::aron::converter::opencv - ${LIBMONGOCXX_LIBRARIES} - ${LIBBSONCXX_LIBRARIES} ) set(LIB_FILES @@ -79,74 +65,6 @@ set(LIB_FILES client/query/Builder.cpp client/query/selectors.cpp - - server/MemoryToIceAdapter.cpp - server/MemoryRemoteGui.cpp - server/RemoteGuiAronDataVisitor.cpp - - server/ltm/base/detail/MemoryItem.cpp - server/ltm/base/detail/MemoryBase.cpp - server/ltm/base/detail/BufferedMemoryBase.cpp - server/ltm/base/detail/LUTMemoryBase.cpp - server/ltm/base/detail/CoreSegmentBase.cpp - server/ltm/base/detail/ProviderSegmentBase.cpp - server/ltm/base/detail/EntityBase.cpp - server/ltm/base/detail/EntitySnapshotBase.cpp - - server/ltm/base/filter/Filter.cpp - server/ltm/base/filter/frequencyFilter/FrequencyFilter.cpp - - server/ltm/base/extractor/Extractor.cpp - server/ltm/base/extractor/imageExtractor/ImageExtractor.cpp - server/ltm/base/extractor/noExtractor/NoExtractor.cpp - - server/ltm/base/converter/dict/Converter.cpp - server/ltm/base/converter/dict/json/JsonConverter.cpp - server/ltm/base/converter/dict/bson/BsonConverter.cpp - server/ltm/base/converter/image/Converter.cpp - server/ltm/base/converter/image/png/PngConverter.cpp - - server/ltm/base/forgetter/Forgetter.cpp - server/ltm/base/forgetter/LRUForgetter/LRUForgetter.cpp - - server/ltm/disk/detail/Data.cpp - server/ltm/disk/detail/DiskStorage.cpp - server/ltm/disk/Memory.cpp - server/ltm/disk/CoreSegment.cpp - server/ltm/disk/ProviderSegment.cpp - server/ltm/disk/Entity.cpp - server/ltm/disk/EntitySnapshot.cpp - - server/wm/memory_definitions.cpp - server/wm/ice_conversions.cpp - server/wm/detail/MaxHistorySize.cpp - - server/plugins/Plugin.cpp - server/plugins/ReadOnlyPluginUser.cpp - server/plugins/ReadWritePluginUser.cpp - - server/segment/Segment.cpp - server/segment/SpecializedSegment.cpp - - server/query_proc/base/BaseQueryProcessorBase.cpp - server/query_proc/base/EntityQueryProcessorBase.cpp - server/query_proc/base/ProviderSegmentQueryProcessorBase.cpp - server/query_proc/base/CoreSegmentQueryProcessorBase.cpp - server/query_proc/base/MemoryQueryProcessorBase.cpp - - server/query_proc/ltm/detail/EntityQueryProcessorBase.cpp - server/query_proc/ltm/detail/ProviderSegmentQueryProcessorBase.cpp - server/query_proc/ltm/detail/CoreSegmentQueryProcessorBase.cpp - server/query_proc/ltm/detail/MemoryQueryProcessorBase.cpp - server/query_proc/ltm/disk/ltm.cpp - - server/query_proc/wm/detail/EntityQueryProcessorBase.cpp - server/query_proc/wm/detail/ProviderSegmentQueryProcessorBase.cpp - server/query_proc/wm/detail/CoreSegmentQueryProcessorBase.cpp - server/query_proc/wm/detail/MemoryQueryProcessorBase.cpp - server/query_proc/wm/wm.cpp - - mns/MemoryNameSystem.cpp mns/Registry.cpp mns/plugins/Plugin.cpp @@ -225,81 +143,7 @@ set(LIB_HEADERS client/util/SimpleReaderBase.h client/util/SimpleWriterBase.h - server.h - server/forward_declarations.h - - server/MemoryToIceAdapter.h - server/MemoryRemoteGui.h - server/RemoteGuiAronDataVisitor.h - - server/ltm/base/detail/MemoryItem.h - server/ltm/base/detail/MemoryBase.h - server/ltm/base/detail/BufferedMemoryBase.h - server/ltm/base/detail/LUTMemoryBase.h - server/ltm/base/detail/CoreSegmentBase.h - server/ltm/base/detail/ProviderSegmentBase.h - server/ltm/base/detail/EntityBase.h - server/ltm/base/detail/EntitySnapshotBase.h - - server/ltm/base/filter/Filter.h - server/ltm/base/filter/frequencyFilter/FrequencyFilter.h - - server/ltm/base/extractor/Extractor.h - server/ltm/base/extractor/imageExtractor/ImageExtractor.h - server/ltm/base/extractor/noExtractor/NoExtractor.h - - server/ltm/base/converter/dict/Converter.h - server/ltm/base/converter/dict/json/JsonConverter.h - server/ltm/base/converter/dict/bson/BsonConverter.h - server/ltm/base/converter/image/Converter.h - server/ltm/base/converter/image/png/PngConverter.h - - - server/ltm/base/forgetter/Forgetter.h - server/ltm/base/forgetter/LRUForgetter/LRUForgetter.h - - server/ltm/disk/detail/Data.h - server/ltm/disk/detail/DiskStorage.h - server/ltm/disk/Memory.h - server/ltm/disk/CoreSegment.h - server/ltm/disk/ProviderSegment.h - server/ltm/disk/Entity.h - server/ltm/disk/EntitySnapshot.h - - server/wm/memory_definitions.h - server/wm/ice_conversions.h - server/wm/detail/MaxHistorySize.h - - server/plugins.h - server/plugins/Plugin.h - server/plugins/ReadOnlyPluginUser.h - server/plugins/ReadWritePluginUser.h - - server/segment/Segment.h - server/segment/SpecializedSegment.h - - server/query_proc.h - - server/query_proc/base.h - server/query_proc/base/BaseQueryProcessorBase.h - server/query_proc/base/EntityQueryProcessorBase.h - server/query_proc/base/ProviderSegmentQueryProcessorBase.h - server/query_proc/base/CoreSegmentQueryProcessorBase.h - server/query_proc/base/MemoryQueryProcessorBase.h - - server/query_proc/ltm/detail/EntityQueryProcessorBase.h - server/query_proc/ltm/detail/ProviderSegmentQueryProcessorBase.h - server/query_proc/ltm/detail/CoreSegmentQueryProcessorBase.h - server/query_proc/ltm/detail/MemoryQueryProcessorBase.h - server/query_proc/ltm/disk/ltm.h - - server/query_proc/wm/detail/EntityQueryProcessorBase.h - server/query_proc/wm/detail/ProviderSegmentQueryProcessorBase.h - server/query_proc/wm/detail/CoreSegmentQueryProcessorBase.h - server/query_proc/wm/detail/MemoryQueryProcessorBase.h - server/query_proc/wm/wm.h - mns.h mns/MemoryNameSystem.h @@ -327,8 +171,7 @@ armarx_add_library( add_library(RobotAPI::armem ALIAS "${LIB_NAME}") add_library(RobotAPI::ArMem ALIAS "${LIB_NAME}") -target_include_directories("${LIB_NAME}" PUBLIC ${LIBMONGOCXX_INCLUDE_DIRS}) -target_include_directories("${LIB_NAME}" PUBLIC ${LIBBSONCXX_INCLUDE_DIRS}) - # add unit tests add_subdirectory(test) + +add_subdirectory(server) diff --git a/source/RobotAPI/libraries/armem/server/CMakeLists.txt b/source/RobotAPI/libraries/armem/server/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..00e51e9e99a1fb0b518f88e5685bfa7069dc8667 --- /dev/null +++ b/source/RobotAPI/libraries/armem/server/CMakeLists.txt @@ -0,0 +1,194 @@ +set(LIB_NAME armem_server) + +armarx_component_set_name("${LIB_NAME}") +armarx_set_target("Library: ${LIB_NAME}") + +SET(INSTALL_SCRIPT_MSG + "Please use the installation script in RobotAPI/etc/mongocxx to install libmongocxx and libbsoncxx." +) + +find_package(libmongocxx QUIET) +armarx_build_if(libmongocxx_FOUND "libmongocxx not available. ${INSTALL_SCRIPT_MSG}") +find_package(libbsoncxx QUIET) +armarx_build_if(libbsoncxx_FOUND "libbsoncxx not available. ${INSTALL_SCRIPT_MSG}") + + +set(LIBS + ArmarXCoreInterfaces + ArmarXCore + RemoteGui + aron + RobotAPI::armem + + # Needed for LTM + RobotAPI::aron::converter::json + RobotAPI::aron::converter::opencv + ${LIBMONGOCXX_LIBRARIES} + ${LIBBSONCXX_LIBRARIES} +) + +set(LIB_FILES + MemoryToIceAdapter.cpp + MemoryRemoteGui.cpp + RemoteGuiAronDataVisitor.cpp + + ltm/base/detail/MemoryItem.cpp + ltm/base/detail/MemoryBase.cpp + ltm/base/detail/BufferedMemoryBase.cpp + ltm/base/detail/LUTMemoryBase.cpp + ltm/base/detail/CoreSegmentBase.cpp + ltm/base/detail/ProviderSegmentBase.cpp + ltm/base/detail/EntityBase.cpp + ltm/base/detail/EntitySnapshotBase.cpp + + ltm/base/filter/Filter.cpp + ltm/base/filter/frequencyFilter/FrequencyFilter.cpp + + ltm/base/extractor/Extractor.cpp + ltm/base/extractor/imageExtractor/ImageExtractor.cpp + ltm/base/extractor/noExtractor/NoExtractor.cpp + + ltm/base/converter/dict/Converter.cpp + ltm/base/converter/dict/json/JsonConverter.cpp + ltm/base/converter/dict/bson/BsonConverter.cpp + ltm/base/converter/image/Converter.cpp + ltm/base/converter/image/png/PngConverter.cpp + + ltm/base/forgetter/Forgetter.cpp + ltm/base/forgetter/LRUForgetter/LRUForgetter.cpp + + ltm/disk/detail/Data.cpp + ltm/disk/detail/DiskStorage.cpp + ltm/disk/Memory.cpp + ltm/disk/CoreSegment.cpp + ltm/disk/ProviderSegment.cpp + ltm/disk/Entity.cpp + ltm/disk/EntitySnapshot.cpp + + wm/memory_definitions.cpp + wm/ice_conversions.cpp + wm/detail/MaxHistorySize.cpp + + plugins/Plugin.cpp + plugins/ReadOnlyPluginUser.cpp + plugins/ReadWritePluginUser.cpp + + segment/Segment.cpp + segment/SpecializedSegment.cpp + + query_proc/base/BaseQueryProcessorBase.cpp + query_proc/base/EntityQueryProcessorBase.cpp + query_proc/base/ProviderSegmentQueryProcessorBase.cpp + query_proc/base/CoreSegmentQueryProcessorBase.cpp + query_proc/base/MemoryQueryProcessorBase.cpp + + query_proc/ltm/detail/EntityQueryProcessorBase.cpp + query_proc/ltm/detail/ProviderSegmentQueryProcessorBase.cpp + query_proc/ltm/detail/CoreSegmentQueryProcessorBase.cpp + query_proc/ltm/detail/MemoryQueryProcessorBase.cpp + query_proc/ltm/disk/ltm.cpp + + query_proc/wm/detail/EntityQueryProcessorBase.cpp + query_proc/wm/detail/ProviderSegmentQueryProcessorBase.cpp + query_proc/wm/detail/CoreSegmentQueryProcessorBase.cpp + query_proc/wm/detail/MemoryQueryProcessorBase.cpp + query_proc/wm/wm.cpp +) + +set(LIB_HEADERS + forward_declarations.h + + MemoryToIceAdapter.h + MemoryRemoteGui.h + RemoteGuiAronDataVisitor.h + + ltm/base/detail/MemoryItem.h + ltm/base/detail/MemoryBase.h + ltm/base/detail/BufferedMemoryBase.h + ltm/base/detail/LUTMemoryBase.h + ltm/base/detail/CoreSegmentBase.h + ltm/base/detail/ProviderSegmentBase.h + ltm/base/detail/EntityBase.h + ltm/base/detail/EntitySnapshotBase.h + + ltm/base/filter/Filter.h + ltm/base/filter/frequencyFilter/FrequencyFilter.h + + ltm/base/extractor/Extractor.h + ltm/base/extractor/imageExtractor/ImageExtractor.h + ltm/base/extractor/noExtractor/NoExtractor.h + + ltm/base/converter/dict/Converter.h + ltm/base/converter/dict/json/JsonConverter.h + ltm/base/converter/dict/bson/BsonConverter.h + ltm/base/converter/image/Converter.h + ltm/base/converter/image/png/PngConverter.h + + + ltm/base/forgetter/Forgetter.h + ltm/base/forgetter/LRUForgetter/LRUForgetter.h + + ltm/disk/detail/Data.h + ltm/disk/detail/DiskStorage.h + ltm/disk/Memory.h + ltm/disk/CoreSegment.h + ltm/disk/ProviderSegment.h + ltm/disk/Entity.h + ltm/disk/EntitySnapshot.h + + wm/memory_definitions.h + wm/ice_conversions.h + wm/detail/MaxHistorySize.h + + plugins.h + plugins/Plugin.h + plugins/ReadOnlyPluginUser.h + plugins/ReadWritePluginUser.h + + segment/Segment.h + segment/SpecializedSegment.h + + query_proc.h + + query_proc/base.h + query_proc/base/BaseQueryProcessorBase.h + query_proc/base/EntityQueryProcessorBase.h + query_proc/base/ProviderSegmentQueryProcessorBase.h + query_proc/base/CoreSegmentQueryProcessorBase.h + query_proc/base/MemoryQueryProcessorBase.h + + query_proc/ltm/detail/EntityQueryProcessorBase.h + query_proc/ltm/detail/ProviderSegmentQueryProcessorBase.h + query_proc/ltm/detail/CoreSegmentQueryProcessorBase.h + query_proc/ltm/detail/MemoryQueryProcessorBase.h + query_proc/ltm/disk/ltm.h + + query_proc/wm/detail/EntityQueryProcessorBase.h + query_proc/wm/detail/ProviderSegmentQueryProcessorBase.h + query_proc/wm/detail/CoreSegmentQueryProcessorBase.h + query_proc/wm/detail/MemoryQueryProcessorBase.h + query_proc/wm/wm.h +) + +# Clear variable set by CMakeLists.txt in parent directory. +set(ARON_FILES "") + +armarx_add_library( + LIB_NAME + "${LIB_NAME}" + SOURCES + "${LIB_FILES}" + HEADERS + "${LIB_HEADERS}" + LIBS + "${LIBS}" +) + + +add_library(RobotAPI::armem_server ALIAS "${LIB_NAME}") + +target_include_directories("${LIB_NAME}" PUBLIC ${LIBMONGOCXX_INCLUDE_DIRS}) +target_include_directories("${LIB_NAME}" PUBLIC ${LIBBSONCXX_INCLUDE_DIRS}) + +# add unit tests +add_subdirectory(test) diff --git a/source/RobotAPI/libraries/armem/test/ArMemLTMBenchmark.cpp b/source/RobotAPI/libraries/armem/server/test/ArMemLTMBenchmark.cpp similarity index 100% rename from source/RobotAPI/libraries/armem/test/ArMemLTMBenchmark.cpp rename to source/RobotAPI/libraries/armem/server/test/ArMemLTMBenchmark.cpp diff --git a/source/RobotAPI/libraries/armem/test/ArMemLTMTest.cpp b/source/RobotAPI/libraries/armem/server/test/ArMemLTMTest.cpp similarity index 100% rename from source/RobotAPI/libraries/armem/test/ArMemLTMTest.cpp rename to source/RobotAPI/libraries/armem/server/test/ArMemLTMTest.cpp diff --git a/source/RobotAPI/libraries/armem/test/ArMemMemoryTest.cpp b/source/RobotAPI/libraries/armem/server/test/ArMemMemoryTest.cpp similarity index 100% rename from source/RobotAPI/libraries/armem/test/ArMemMemoryTest.cpp rename to source/RobotAPI/libraries/armem/server/test/ArMemMemoryTest.cpp diff --git a/source/RobotAPI/libraries/armem/test/ArMemQueryTest.cpp b/source/RobotAPI/libraries/armem/server/test/ArMemQueryTest.cpp similarity index 100% rename from source/RobotAPI/libraries/armem/test/ArMemQueryTest.cpp rename to source/RobotAPI/libraries/armem/server/test/ArMemQueryTest.cpp diff --git a/source/RobotAPI/libraries/armem/server/test/CMakeLists.txt b/source/RobotAPI/libraries/armem/server/test/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..c8f646815ccd1838019cc74e2d2358451d8ec4c1 --- /dev/null +++ b/source/RobotAPI/libraries/armem/server/test/CMakeLists.txt @@ -0,0 +1,8 @@ + +# Libs required for the tests +SET(LIBS ${LIBS} ArmarXCore ${LIB_NAME}) + +armarx_add_test(ArMemLTMTest ArMemLTMTest.cpp "${LIBS}") +armarx_add_test(ArMemLTMBenchmark ArMemLTMBenchmark.cpp "${LIBS}") +armarx_add_test(ArMemMemoryTest ArMemMemoryTest.cpp "${LIBS}") +armarx_add_test(ArMemQueryTest ArMemQueryTest.cpp "${LIBS}") diff --git a/source/RobotAPI/libraries/armem/test/CMakeLists.txt b/source/RobotAPI/libraries/armem/test/CMakeLists.txt index a80618cee37da7a0ab0e3198d8f9eda431964bfb..592b9aef3105bd7fc780c92348cae11e60f65a6d 100644 --- a/source/RobotAPI/libraries/armem/test/CMakeLists.txt +++ b/source/RobotAPI/libraries/armem/test/CMakeLists.txt @@ -5,9 +5,5 @@ SET(LIBS ${LIBS} ArmarXCore ${LIB_NAME}) armarx_add_test(ArMemForEachTest ArMemForEachTest.cpp "${LIBS}") armarx_add_test(ArMemGetFindTest ArMemGetFindTest.cpp "${LIBS}") armarx_add_test(ArMemIceConversionsTest ArMemIceConversionsTest.cpp "${LIBS}") -armarx_add_test(ArMemLTMTest ArMemLTMTest.cpp "${LIBS}") -armarx_add_test(ArMemLTMBenchmark ArMemLTMBenchmark.cpp "${LIBS}") -armarx_add_test(ArMemMemoryTest ArMemMemoryTest.cpp "${LIBS}") armarx_add_test(ArMemMemoryIDTest ArMemMemoryIDTest.cpp "${LIBS}") armarx_add_test(ArMemQueryBuilderTest ArMemQueryBuilderTest.cpp "${LIBS}") -armarx_add_test(ArMemQueryTest ArMemQueryTest.cpp "${LIBS}") diff --git a/source/RobotAPI/libraries/armem_gui/CMakeLists.txt b/source/RobotAPI/libraries/armem_gui/CMakeLists.txt index 0f8462be52eb11c82bc4d981ac38dfcefad1e2bb..b75fa106e2c89434d1032ba3a0173421fa7e1bc6 100644 --- a/source/RobotAPI/libraries/armem_gui/CMakeLists.txt +++ b/source/RobotAPI/libraries/armem_gui/CMakeLists.txt @@ -10,8 +10,10 @@ set(LIBRARIES # ArmarXGui SimpleConfigDialog # RobotAPI - aroneigenconverter armem aroncommon + aroneigenconverter + armem + armem_server # for disk LTM ) set(SOURCES @@ -96,5 +98,9 @@ set(HEADERS armarx_gui_library("${LIB_NAME}" "${SOURCES}" "${GUI_MOC_HDRS}" "${GUI_UIS}" "" "${LIBRARIES}") +add_library(${PROJECT_NAME}::armem_gui ALIAS armem_gui) + + # add unit tests add_subdirectory(test) + diff --git a/source/RobotAPI/libraries/armem_gui/server/CMakeLists.txt b/source/RobotAPI/libraries/armem_gui/server/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..46fce90ac352efc0ed0870d4988fb1eea80dfa0e --- /dev/null +++ b/source/RobotAPI/libraries/armem_gui/server/CMakeLists.txt @@ -0,0 +1,99 @@ +set(LIB_NAME armem_gui) + +armarx_component_set_name("${LIB_NAME}") +armarx_set_target("Library: ${LIB_NAME}") + + +set(LIBRARIES + # ArmarXCore + ArmarXCoreInterfaces ArmarXCore + # ArmarXGui + SimpleConfigDialog + # RobotAPI + aroneigenconverter armem +) + +set(SOURCES + + gui_utils.cpp + lifecycle.cpp + + MemoryViewer.cpp + PeriodicUpdateWidget.cpp + + disk/ControlWidget.cpp + + instance/GroupBox.cpp + instance/ImageView.cpp + instance/InstanceView.cpp + instance/MemoryIDTreeWidgetItem.cpp + instance/WidgetsWithToolbar.cpp + instance/sanitize_typename.cpp + instance/serialize_path.cpp + + instance/display_visitors/DataDisplayVisitor.cpp + instance/display_visitors/TypedDataDisplayVisitor.cpp + + instance/tree_builders/DataTreeBuilder.cpp + instance/tree_builders/DataTreeBuilderBase.cpp + instance/tree_builders/TypedDataTreeBuilder.cpp + + instance/tree_visitors/TreeDataVisitorBase.cpp + instance/tree_visitors/TreeDataVisitor.cpp + instance/tree_visitors/TreeTypedDataVisitor.cpp + instance/tree_visitors/TreeTypedJSONConverter.cpp + + memory/GroupBox.cpp + memory/TreeWidget.cpp + + query_widgets/QueryWidget.cpp + query_widgets/SnapshotForm.cpp + query_widgets/SnapshotSelectorWidget.cpp +) +set(HEADERS + + gui_utils.h + lifecycle.h + + MemoryViewer.h + PeriodicUpdateWidget.h + TreeWidgetBuilder.h + + PeriodicUpdateWidget.h + TreeWidgetBuilder.h + + disk/ControlWidget.h + + instance/GroupBox.h + instance/ImageView.h + instance/InstanceView.h + instance/MemoryIDTreeWidgetItem.h + instance/WidgetsWithToolbar.h + instance/sanitize_typename.h + instance/serialize_path.h + + instance/display_visitors/DataDisplayVisitor.h + instance/display_visitors/TypedDataDisplayVisitor.h + + instance/tree_builders/DataTreeBuilder.h + instance/tree_builders/DataTreeBuilderBase.h + instance/tree_builders/TypedDataTreeBuilder.h + + instance/tree_visitors/TreeDataVisitorBase.h + instance/tree_visitors/TreeDataVisitor.h + instance/tree_visitors/TreeTypedDataVisitor.h + instance/tree_visitors/TreeTypedJSONConverter.h + + memory/GroupBox.h + memory/TreeWidget.h + + query_widgets/QueryWidget.h + query_widgets/SnapshotForm.h + query_widgets/SnapshotSelectorWidget.h +) + +armarx_gui_library("${LIB_NAME}" "${SOURCES}" "${GUI_MOC_HDRS}" "${GUI_UIS}" "" "${LIBRARIES}") + + +# add unit tests +add_subdirectory(test) diff --git a/source/RobotAPI/libraries/armem_motions/CMakeLists.txt b/source/RobotAPI/libraries/armem_motions/CMakeLists.txt index bf222bcec14b760e988327bd0d038322fce32b97..d82a0952ee75f711fc0c9c067d5ed860d68b25f1 100644 --- a/source/RobotAPI/libraries/armem_motions/CMakeLists.txt +++ b/source/RobotAPI/libraries/armem_motions/CMakeLists.txt @@ -14,15 +14,15 @@ armarx_add_library( RobotAPI::PriorKnowledge::Motions SOURCES - ./server/mdb_conversions.cpp - ./server/MotionSegment.cpp + armem_motions.cpp HEADERS - ./server/mdb_conversions.h - ./server/MotionSegment.h + armem_motions.h ARON_FILES - ./aron/MDBReference.xml + aron/MDBReference.xml ) add_library(RobotAPI::ArMemMotions ALIAS armem_motions) add_library(RobotAPI::armem_motions ALIAS armem_motions) + +add_subdirectory(server) diff --git a/source/RobotAPI/libraries/armem_motions/armem_motions.cpp b/source/RobotAPI/libraries/armem_motions/armem_motions.cpp new file mode 100644 index 0000000000000000000000000000000000000000..a675039efc6efeb0220ea11ee11f61cc60ed24e1 --- /dev/null +++ b/source/RobotAPI/libraries/armem_motions/armem_motions.cpp @@ -0,0 +1,6 @@ +#include "armem_motions.h" + +namespace armarx::armem::motions::mdb +{ + +} diff --git a/source/RobotAPI/libraries/armem_motions/armem_motions.h b/source/RobotAPI/libraries/armem_motions/armem_motions.h new file mode 100644 index 0000000000000000000000000000000000000000..f9dca33dd7b46131ee27c6d52c2cf7e4e579f9c4 --- /dev/null +++ b/source/RobotAPI/libraries/armem_motions/armem_motions.h @@ -0,0 +1,7 @@ +#pragma once + + +namespace armarx::armem::motions::mdb +{ + +} diff --git a/source/RobotAPI/libraries/armem_motions/server/CMakeLists.txt b/source/RobotAPI/libraries/armem_motions/server/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5aaac747df0903aab354366f97d950adce1f1dc1 --- /dev/null +++ b/source/RobotAPI/libraries/armem_motions/server/CMakeLists.txt @@ -0,0 +1,31 @@ +set(ARMARX_LIB_NAME "" ) +set(ARON_FILES "") + +set(LIB_NAME armem_motions_server) + +armarx_component_set_name("${LIB_NAME}") +armarx_set_target("Library: ${LIB_NAME}") + +armarx_add_library( + LIBS + ArmarXCoreInterfaces + ArmarXCore + ArmarXCoreObservers + + RobotAPI::Core + RobotAPI::armem_server + RobotAPI::PriorKnowledge::Motions + RobotAPI::armem_motions + + SOURCES + mdb_conversions.cpp + MotionSegment.cpp + + HEADERS + mdb_conversions.h + MotionSegment.h +) + + +add_library(RobotAPI::ArMemMotions_server ALIAS armem_motions_server) +add_library(RobotAPI::armem_motions_server ALIAS armem_motions_server) diff --git a/source/RobotAPI/libraries/armem_mps/CMakeLists.txt b/source/RobotAPI/libraries/armem_mps/CMakeLists.txt index 68cc66e6bb96278954f919b379d15bb03dcf8902..b436f3168cd2f75f8e9e8cc7cae9a04d11f4b6e1 100644 --- a/source/RobotAPI/libraries/armem_mps/CMakeLists.txt +++ b/source/RobotAPI/libraries/armem_mps/CMakeLists.txt @@ -2,7 +2,6 @@ set(LIB_NAME armem_mps) armarx_component_set_name("${LIB_NAME}") armarx_set_target("Library: ${LIB_NAME}") -find_package(DMP QUIET) # needs to be changed to new MP package armarx_build_if(DMP_FOUND "DMP not available") @@ -11,31 +10,28 @@ armarx_add_library( ArmarXCoreInterfaces ArmarXCore ArmarXCoreObservers - ${DMP_LIBRARIES} + RobotAPI::Core RobotAPI::armem RobotAPI::PriorKnowledge::Motions RobotAPI::armem_motions + VirtualRobot + ${DMP_LIBRARIES} + SOURCES - ./aron_conversions.cpp - #./traj_conversions.cpp - ./server/MotionPrimitives/motionprimitives.cpp - ./server/MotionPrimitives/Segment.cpp - HEADERS - ./aron_conversions.h - #./traj_conversions.h - ./server/MotionPrimitives/motionprimitives.h - ./server/MotionPrimitives/Segment.h -) + aron_conversions.cpp + #traj_conversions.cpp + HEADERS + aron_conversions.h + #traj_conversions.h -armarx_enable_aron_file_generation_for_target( - TARGET_NAME - "${LIB_NAME}" ARON_FILES - aron/Trajectory.xml + aron/Trajectory.xml ) add_library(RobotAPI::armem_mps ALIAS armem_mps) + +add_subdirectory(server) diff --git a/source/RobotAPI/libraries/armem_mps/server/CMakeLists.txt b/source/RobotAPI/libraries/armem_mps/server/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..c4a5854ce895a7415a6ba21cdd06b8b4b03eb6c8 --- /dev/null +++ b/source/RobotAPI/libraries/armem_mps/server/CMakeLists.txt @@ -0,0 +1,36 @@ +set(ARMARX_LIB_NAME "" ) +set(ARON_FILES "") + +set(LIB_NAME armem_mps_server) + +armarx_component_set_name("${LIB_NAME}") +armarx_set_target("Library: ${LIB_NAME}") + +armarx_build_if(DMP_FOUND "DMP not available") + +armarx_add_library( + LIBS + ArmarXCoreInterfaces + ArmarXCore + ArmarXCoreObservers + + RobotAPI::Core + RobotAPI::armem_server + RobotAPI::PriorKnowledge::Motions + RobotAPI::armem_motions + RobotAPI::armem_mps + + VirtualRobot + ${DMP_LIBRARIES} + + SOURCES + MotionPrimitives/motionprimitives.cpp + MotionPrimitives/Segment.cpp + + HEADERS + MotionPrimitives/motionprimitives.h + MotionPrimitives/Segment.h +) + + +add_library(RobotAPI::armem_mps_server ALIAS armem_mps_server) diff --git a/source/RobotAPI/libraries/armem_mps/server/MotionPrimitives/motionprimitives.cpp b/source/RobotAPI/libraries/armem_mps/server/MotionPrimitives/motionprimitives.cpp index 598cb580af72e4b3e9f40d0e86cb785d7e14c7d5..074f28c76d129a66eeea1b854941583bdb0809c0 100644 --- a/source/RobotAPI/libraries/armem_mps/server/MotionPrimitives/motionprimitives.cpp +++ b/source/RobotAPI/libraries/armem_mps/server/MotionPrimitives/motionprimitives.cpp @@ -1,50 +1,61 @@ #include "motionprimitives.h" -#include <ArmarXCore/core/exceptions/local/ExpressionException.h> +// #include <iostream> +// #include <fstream> #include <SimoxUtility/algorithm/string.h> -#include <RobotAPI/libraries/armem/core/error.h> -#include <RobotAPI/libraries/armem/server/MemoryRemoteGui.h> - -#include <RobotAPI/libraries/armem_mps/aron/Trajectory.aron.generated.h> +#include <VirtualRobot/MathTools.h> #include <dmp/representation/trajectory.h> -#include <ArmarXCore/core/system/ArmarXDataPath.h> + +#include <ArmarXCore/core/exceptions/local/ExpressionException.h> #include <ArmarXCore/core/logging/Logging.h> -#include <VirtualRobot/MathTools.h> +#include <ArmarXCore/core/system/ArmarXDataPath.h> -namespace armarx::armem::mps -{ +#include <RobotAPI/libraries/armem/core/error.h> +#include <RobotAPI/libraries/armem_mps/aron/Trajectory.aron.generated.h> -std::optional<arondto::Trajectory> createFromFile(const std::filesystem::__cxx11::path &pathToInfoJson, bool taskspace) + +namespace armarx::armem::mps { - if (std::filesystem::exists(pathToInfoJson) && std::filesystem::is_regular_file(pathToInfoJson)) + std::optional<arondto::Trajectory> + createFromFile( + const std::filesystem::path &pathToInfoJson, + bool taskspace) { - DMP::Vec<DMP::SampledTrajectoryV2 > trajs; - DMP::SampledTrajectoryV2 traj; - std::string absPath; - ArmarXDataPath::getAbsolutePath(pathToInfoJson, absPath); - traj.readFromCSVFile(absPath); - //traj = DMP::SampledTrajectoryV2::normalizeTimestamps(traj, 0, 1); - std::map<double, DMP::DVec> currentTraj = traj.getPositionData();//todo - trajs.push_back(traj); - arondto::Trajectory trajectory; - std::string name = pathToInfoJson.filename(); - std::string toErase = "taskspace-trajectory-"; - size_t pos = name.find(toErase); - if (pos != std::string::npos) + if (std::filesystem::exists(pathToInfoJson) && std::filesystem::is_regular_file(pathToInfoJson)) { - name.erase(pos, toErase.length()); - } - trajectory.name = name; - std::map<std::string, std::vector<float>> mapJointSpace; - for(DMP::SampledTrajectoryV2 traj: trajs){ - std::map<double, DMP::DVec> currentTraj = traj.getPositionData(); // todo: add config making data structure clear + DMP::Vec<DMP::SampledTrajectoryV2 > trajs; + DMP::SampledTrajectoryV2 traj; + std::string absPath; + ArmarXDataPath::getAbsolutePath(pathToInfoJson, absPath); + traj.readFromCSVFile(absPath); + + //traj = DMP::SampledTrajectoryV2::normalizeTimestamps(traj, 0, 1); + std::map<double, DMP::DVec> currentTraj = traj.getPositionData(); //todo + trajs.push_back(traj); + + arondto::Trajectory trajectory; + std::string name = pathToInfoJson.filename(); + std::string toErase = "taskspace-trajectory-"; + size_t pos = name.find(toErase); + if (pos != std::string::npos) + { + name.erase(pos, toErase.length()); + } + trajectory.name = name; - if(taskspace){ - for(std::pair<double, DMP::DVec> element: currentTraj){ + std::map<std::string, std::vector<float>> mapJointSpace; + for (const DMP::SampledTrajectoryV2& traj: trajs) + { + std::map<double, DMP::DVec> currentTraj = traj.getPositionData(); // todo: add config making data structure clear + + if (taskspace) + { + for (std::pair<double, DMP::DVec> element: currentTraj) + { Eigen::Vector3f vec(element.second.at(0), element.second.at(1), element.second.at(2)); Eigen::Matrix<float, 4, 4> poseMatrix = VirtualRobot::MathTools::quat2eigen4f(element.second.at(4), element.second.at(5), element.second.at(6), element.second.at(3)); poseMatrix.block<3, 1>(0, 3) = vec; @@ -52,33 +63,31 @@ std::optional<arondto::Trajectory> createFromFile(const std::filesystem::__cxx11 tselement.timestep = element.first; tselement.pose = poseMatrix; trajectory.taskSpace.steps.push_back(tselement); - } - - - }else{ - for(std::pair<double, DMP::DVec> element: currentTraj){ - std::vector<float> configvec; - for(double el: element.second){ - configvec.push_back(float(el)); + } + else + { + for (auto& [time, pos] : currentTraj) + { + std::vector<float> configvec; + for (double el: pos) + { + configvec.push_back(float(el)); + } + arondto::JSElement jselement; + jselement.timestep = time; + jselement.jointValues = configvec; + trajectory.jointSpace.steps.push_back(jselement); } - arondto::JSElement jselement; - jselement.timestep = element.first; - jselement.jointValues = configvec; - trajectory.jointSpace.steps.push_back(jselement); } } + return trajectory; + } + else + { + return std::nullopt; } - - return trajectory; - } - else - { - return std::nullopt; } -} - - } diff --git a/source/RobotAPI/libraries/armem_mps/server/MotionPrimitives/motionprimitives.h b/source/RobotAPI/libraries/armem_mps/server/MotionPrimitives/motionprimitives.h index be5b41fab7c04bcc526e9642fd118e7fe8186b1c..dfe9916bbf256b838cf99bb3a2dfe4972a47be55 100644 --- a/source/RobotAPI/libraries/armem_mps/server/MotionPrimitives/motionprimitives.h +++ b/source/RobotAPI/libraries/armem_mps/server/MotionPrimitives/motionprimitives.h @@ -1,19 +1,16 @@ -#ifndef MOTIONPRIMITIVES_H -#define MOTIONPRIMITIVES_H +#pragma once #include <filesystem> -#include <iostream> -#include <fstream> #include <optional> // ArmarX -#include <RobotAPI/libraries/armem_motions/aron/MDBReference.aron.generated.h> +// #include <RobotAPI/libraries/armem_motions/aron/MDBReference.aron.generated.h> #include <RobotAPI/libraries/armem_mps/aron/Trajectory.aron.generated.h> + namespace armarx::armem::mps { std::optional<arondto::Trajectory> createFromFile(const std::filesystem::path& pathToInfoJson, bool taskspace); } -#endif // MOTIONPRIMITIVES_H diff --git a/source/RobotAPI/libraries/armem_objects/CMakeLists.txt b/source/RobotAPI/libraries/armem_objects/CMakeLists.txt index ab26b1f8a38b5e18b16dc49a498c9369d6d918db..88fd8cf80f190ee13489c8180e4c4a53f652caff 100644 --- a/source/RobotAPI/libraries/armem_objects/CMakeLists.txt +++ b/source/RobotAPI/libraries/armem_objects/CMakeLists.txt @@ -50,18 +50,6 @@ armarx_add_library( SceneSnapshot.cpp - server/class/FloorVis.cpp - server/class/Segment.cpp - - server/instance/Segment.cpp - server/instance/SegmentAdapter.cpp - server/instance/Decay.cpp - server/instance/RobotHeadMovement.cpp - server/instance/Visu.cpp - server/instance/ArticulatedObjectVisu.cpp - - server/attachments/Segment.cpp - client/articulated_object/Reader.cpp client/articulated_object/Writer.cpp client/articulated_object/ArticulatedObjectReader.cpp @@ -71,13 +59,6 @@ armarx_add_library( client/attachment/Reader.cpp client/attachment/Writer.cpp -) - - - -armarx_enable_aron_file_generation_for_target( - TARGET_NAME - "${LIB_NAME}" ARON_FILES aron/ObjectClass.xml aron/ObjectInstance.xml @@ -86,7 +67,7 @@ armarx_enable_aron_file_generation_for_target( # aron/Constraint.xml ) + add_library(${PROJECT_NAME}::armem_objects ALIAS armem_objects) -# add unit tests -# add_subdirectory(test) +add_subdirectory(server) diff --git a/source/RobotAPI/libraries/armem_objects/server/CMakeLists.txt b/source/RobotAPI/libraries/armem_objects/server/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..cf92773305aac9c8d4c1ce69abbf86bd3b6789ea --- /dev/null +++ b/source/RobotAPI/libraries/armem_objects/server/CMakeLists.txt @@ -0,0 +1,54 @@ +set(ARMARX_LIB_NAME "" ) +set(ARON_FILES "") + +set(LIB_NAME armem_objects_server) + +armarx_component_set_name("${LIB_NAME}") +armarx_set_target("Library: ${LIB_NAME}") + + +armarx_add_library( + LIBS + # ArmarXCore + ArmarXCore + # ArmarXGui + ArmarXGuiComponentPlugins + # RobotAPI + RobotAPI::ArViz + RobotAPI::ComponentPlugins + RobotAPI::Core + RobotAPI::armem_server + RobotAPI::armem_robot + RobotAPI::armem_objects + + HEADERS + + class/FloorVis.h + class/Segment.h + + instance/Segment.h + instance/SegmentAdapter.h + instance/Decay.h + instance/RobotHeadMovement.h + instance/Visu.h + instance/ArticulatedObjectVisu.h + + attachments/Segment.h + + SOURCES + class/FloorVis.cpp + class/Segment.cpp + + instance/Segment.cpp + instance/SegmentAdapter.cpp + instance/Decay.cpp + instance/RobotHeadMovement.cpp + instance/Visu.cpp + instance/ArticulatedObjectVisu.cpp + + attachments/Segment.cpp +) + + +add_library(${PROJECT_NAME}::armem_objects_server ALIAS armem_objects_server) + diff --git a/source/RobotAPI/libraries/armem_robot_state/CMakeLists.txt b/source/RobotAPI/libraries/armem_robot_state/CMakeLists.txt index c86ed671ef17fcd287c05a7083abf3803b852e99..2c46fab4e7f811e979609b96b62ca5a02cb65b15 100644 --- a/source/RobotAPI/libraries/armem_robot_state/CMakeLists.txt +++ b/source/RobotAPI/libraries/armem_robot_state/CMakeLists.txt @@ -3,7 +3,6 @@ set(LIB_NAME armem_robot_state) armarx_component_set_name("${LIB_NAME}") armarx_set_target("Library: ${LIB_NAME}") -find_package(Eigen3 QUIET) armarx_build_if(Eigen3_FOUND "Eigen3 not available") @@ -36,26 +35,6 @@ armarx_add_library( client/localization/TransformReader.h client/localization/TransformWriter.h - server/forward_declarations.h - - server/common/Visu.h - server/common/combine.h - - server/localization/Segment.h - - server/proprioception/Segment.h - server/proprioception/aron_conversions.h - server/proprioception/RobotStateWriter.h - server/proprioception/RobotUnitData.h - server/proprioception/RobotUnitReader.h - - server/proprioception/converters/Armar6Converter.h - server/proprioception/converters/ConverterTools.h - server/proprioception/converters/ConverterRegistry.h - server/proprioception/converters/ConverterInterface.h - - server/description/Segment.h - aron_conversions.h utils.h @@ -68,24 +47,6 @@ armarx_add_library( client/localization/TransformReader.cpp client/localization/TransformWriter.cpp - server/common/Visu.cpp - server/common/combine.cpp - - server/localization/Segment.cpp - - server/proprioception/Segment.cpp - server/proprioception/aron_conversions.cpp - server/proprioception/RobotStateWriter.cpp - server/proprioception/RobotUnitData.cpp - server/proprioception/RobotUnitReader.cpp - - server/proprioception/converters/Armar6Converter.cpp - server/proprioception/converters/ConverterTools.cpp - server/proprioception/converters/ConverterRegistry.cpp - server/proprioception/converters/ConverterInterface.cpp - - server/description/Segment.cpp - aron_conversions.cpp utils.cpp ) @@ -104,3 +65,5 @@ armarx_enable_aron_file_generation_for_target( add_library(RobotAPI::armem_robot_state ALIAS armem_robot_state) + +add_subdirectory(server) diff --git a/source/RobotAPI/libraries/armem_robot_state/server/CMakeLists.txt b/source/RobotAPI/libraries/armem_robot_state/server/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..848efe75e0b615f367f5602c9cdfdfb3cdbbd7ea --- /dev/null +++ b/source/RobotAPI/libraries/armem_robot_state/server/CMakeLists.txt @@ -0,0 +1,73 @@ +set(ARMARX_LIB_NAME "" ) +set(ARON_FILES "") + +set(LIB_NAME armem_robot_state_server) + +armarx_component_set_name("${LIB_NAME}") +armarx_set_target("Library: ${LIB_NAME}") + +armarx_build_if(Eigen3_FOUND "Eigen3 not available") + + +armarx_add_library( + LIBS + # ArmarX + ArmarXCore + ArmarXCoreInterfaces + DebugObserverHelper + # ArmarXGui + ArmarXGuiComponentPlugins + # This package + RobotAPICore + RobotAPIInterfaces + RobotAPI::armem_server + RobotAPI::armem_robot + RobotAPI::armem_robot_state + aroncommon + + # System / External + Eigen3::Eigen + + HEADERS + forward_declarations.h + + common/Visu.h + common/combine.h + + localization/Segment.h + + proprioception/Segment.h + proprioception/aron_conversions.h + proprioception/RobotStateWriter.h + proprioception/RobotUnitData.h + proprioception/RobotUnitReader.h + + proprioception/converters/Armar6Converter.h + proprioception/converters/ConverterTools.h + proprioception/converters/ConverterRegistry.h + proprioception/converters/ConverterInterface.h + + description/Segment.h + + SOURCES + common/Visu.cpp + common/combine.cpp + + localization/Segment.cpp + + proprioception/Segment.cpp + proprioception/aron_conversions.cpp + proprioception/RobotStateWriter.cpp + proprioception/RobotUnitData.cpp + proprioception/RobotUnitReader.cpp + + proprioception/converters/Armar6Converter.cpp + proprioception/converters/ConverterTools.cpp + proprioception/converters/ConverterRegistry.cpp + proprioception/converters/ConverterInterface.cpp + + description/Segment.cpp +) + + +add_library(RobotAPI::armem_robot_state_server ALIAS armem_robot_state_server)