set(LIB_NAME ${PROJECT_NAME}ArmarXObjects) armarx_component_set_name("${LIB_NAME}") armarx_set_target("Library: ${LIB_NAME}") armarx_build_if(Eigen3_FOUND "Eigen3 not available") armarx_build_if(manif_FOUND "manif not available") set(LIBS # ArmarXGui RemoteGui # RobotAPI RobotAPI::Core RobotAPIInterfaces aroncommon Eigen3::Eigen ${manif_LIBRARIES} armem_robot_state ) set(LIB_FILES ObjectID.cpp ObjectInfo.cpp ObjectFinder.cpp ObjectPose.cpp ObjectPoseClient.cpp PoseManifoldGaussian.cpp ProvidedObjectPose.cpp Scene.cpp json_conversions.cpp ice_conversions.cpp aron_conversions/armarx.cpp aron_conversions/objpose.cpp plugins/ObjectPoseProviderPlugin.cpp plugins/ObjectPoseClientPlugin.cpp plugins/RequestedObjects.cpp predictions.cpp util.cpp ) set(LIB_HEADERS ArmarXObjects.h ObjectID.h ObjectInfo.h ObjectFinder.h ObjectPose.h ObjectPoseClient.h PoseManifoldGaussian.h ProvidedObjectPose.h Scene.h forward_declarations.h json_conversions.h ice_conversions.h aron_conversions.h aron_conversions/armarx.h aron_conversions/objpose.h plugins/ObjectPoseProviderPlugin.h plugins/ObjectPoseClientPlugin.h plugins/RequestedObjects.h predictions.h util.h ) armarx_add_library("${LIB_NAME}" "${LIB_FILES}" "${LIB_HEADERS}" "${LIBS}") if(manif_FOUND) target_include_directories("${LIB_NAME}" SYSTEM PUBLIC ${manif_INCLUDE_DIR} ${manif_INCLUDE_DIRS}) endif() add_library(${PROJECT_NAME}::ArmarXObjects ALIAS ${PROJECT_NAME}ArmarXObjects) armarx_enable_aron_file_generation_for_target( TARGET_NAME "${LIB_NAME}" ARON_FILES aron/ObjectID.xml aron/ObjectPose.xml aron/ObjectType.xml aron/PoseManifoldGaussian.xml ) # add unit tests add_subdirectory(test)