From 22234536395346025e6b785a2b163baaab555939 Mon Sep 17 00:00:00 2001 From: duongtd Date: Mon, 3 Aug 2026 22:40:26 +0700 Subject: [PATCH] optimal & fix file cmake --- CMakeLists.txt | 464 +++++++----- README.md | 574 ++++----------- build-standalone-codex-5j6ZZh/CMakeCache.txt | 393 +++++++++++ .../CMakeFiles/3.16.3/CMakeCXXCompiler.cmake | 88 +++ .../3.16.3/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 16560 bytes .../CMakeFiles/3.16.3/CMakeSystem.cmake | 15 + .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 660 ++++++++++++++++++ .../CMakeFiles/3.16.3/CompilerIdCXX/a.out | Bin 0 -> 16720 bytes .../CMakeDirectoryInformation.cmake | 16 + .../CMakeFiles/CMakeError.log | 58 ++ .../CMakeFiles/CMakeOutput.log | 265 +++++++ .../CheckFunctionExists.cxx | 28 + .../mission_adapters-targets-noconfig.cmake | 40 ++ .../mission_adapters-targets.cmake | 113 +++ .../CMakeFiles/Makefile.cmake | 131 ++++ .../CMakeFiles/Makefile2 | 223 ++++++ .../CMakeFiles/TargetDirectories.txt | 11 + .../CMakeFiles/cmake.check_cache | 1 + .../mission_adapters.dir/CXX.includecache | 508 ++++++++++++++ .../mission_adapters.dir/DependInfo.cmake | 74 ++ .../mission_adapters.dir/build.make | 191 +++++ .../mission_adapters.dir/cmake_clean.cmake | 16 + .../mission_adapters.dir/depend.internal | 207 ++++++ .../mission_adapters.dir/depend.make | 207 ++++++ .../mission_adapters.dir/flags.make | 10 + .../CMakeFiles/mission_adapters.dir/link.txt | 1 + .../mission_adapters.dir/progress.make | 9 + .../mission_adapters.dir/src/event.cpp.o | Bin 0 -> 106976 bytes .../src/event_processor.cpp.o | Bin 0 -> 430288 bytes .../src/mission_config.cpp.o | Bin 0 -> 17160 bytes .../src/mission_executor.cpp.o | Bin 0 -> 76200 bytes .../src/mission_manager.cpp.o | Bin 0 -> 173944 bytes .../src/plugin_registry.cpp.o | Bin 0 -> 690240 bytes .../mission_adapters.dir/src/types.cpp.o | Bin 0 -> 3712 bytes .../CXX.includecache | 278 ++++++++ .../DependInfo.cmake | 68 ++ .../build.make | 99 +++ .../cmake_clean.cmake | 10 + .../depend.internal | 30 + .../depend.make | 30 + .../flags.make | 10 + .../mission_adapters_goal_source.dir/link.txt | 1 + .../plugins/goal_source_adapter.cpp.o | Bin 0 -> 390992 bytes .../progress.make | 3 + .../CXX.includecache | 394 +++++++++++ .../DependInfo.cmake | 68 ++ .../build.make | 99 +++ .../cmake_clean.cmake | 10 + .../depend.internal | 37 + .../depend.make | 37 + .../flags.make | 10 + .../link.txt | 1 + .../plugins/vda5050_source_adapter.cpp.o | Bin 0 -> 1262816 bytes .../progress.make | 3 + .../CMakeFiles/progress.marks | 1 + .../CXX.includecache | 484 +++++++++++++ .../DependInfo.cmake | 61 ++ .../robot_control_example.dir/build.make | 99 +++ .../cmake_clean.cmake | 10 + .../robot_control_example.dir/depend.internal | 44 ++ .../robot_control_example.dir/depend.make | 44 ++ .../examples/robot_control_example.cpp.o | Bin 0 -> 118152 bytes .../robot_control_example.dir/flags.make | 10 + .../robot_control_example.dir/link.txt | 1 + .../robot_control_example.dir/progress.make | 3 + .../vda5050_order_demo.dir/CXX.includecache | 290 ++++++++ .../vda5050_order_demo.dir/DependInfo.cmake | 63 ++ .../vda5050_order_demo.dir/build.make | 100 +++ .../vda5050_order_demo.dir/cmake_clean.cmake | 10 + .../vda5050_order_demo.dir/depend.internal | 30 + .../vda5050_order_demo.dir/depend.make | 30 + .../examples/vda5050_order_demo.cpp.o | Bin 0 -> 442600 bytes .../vda5050_order_demo.dir/flags.make | 10 + .../vda5050_order_demo.dir/link.txt | 1 + .../vda5050_order_demo.dir/progress.make | 3 + build-standalone-codex-5j6ZZh/Makefile | 584 ++++++++++++++++ .../cmake_install.cmake | 141 ++++ .../libmission_adapters.so | Bin 0 -> 979992 bytes .../libmission_adapters_goal_source.so | Bin 0 -> 292392 bytes .../libmission_adapters_vda5050_source.so | Bin 0 -> 902496 bytes .../robot_control_example | Bin 0 -> 99088 bytes .../vda5050_order_demo | Bin 0 -> 290560 bytes cfg/stanley_local_planner_params.yaml | 11 - docs/PLUGIN_GUIDE.md | 176 +++++ examples/robot_control_example.cpp | 101 +++ examples/vda5050_order_demo.cpp | 142 ++++ include/mission_adapters/adapter.h | 95 +++ include/mission_adapters/event.h | 121 ++++ include/mission_adapters/event_processor.h | 93 +++ include/mission_adapters/mission_adapters.h | 256 +------ include/mission_adapters/mission_config.h | 64 ++ include/mission_adapters/mission_excutor.h | 0 include/mission_adapters/mission_executor.h | 62 ++ include/mission_adapters/mission_manager.h | 165 +++++ include/mission_adapters/mission_request.h | 77 ++ include/mission_adapters/navigation_client.h | 55 ++ include/mission_adapters/plugin_registry.h | 94 +++ include/mission_adapters/types.h | 144 ++++ package.xml | 70 +- plugins/goal_source_adapter.cpp | 91 +++ plugins/goal_source_adapter.h | 55 ++ plugins/vda5050_source_adapter.cpp | 577 +++++++++++++++ plugins/vda5050_source_adapter.h | 146 ++++ src/event.cpp | 71 ++ src/event_processor.cpp | 214 ++++++ src/mission_adapters.cpp | 529 -------------- src/mission_config.cpp | 44 ++ src/mission_executor.cpp | 80 +++ src/mission_manager.cpp | 389 +++++++++++ src/plugin_registry.cpp | 180 +++++ src/robot_control_test.cpp | 103 --- src/types.cpp | 23 + test/adapter_test.cpp | 527 ++++++++++++++ test/config/mission_adapters_params.yaml | 107 +++ test/event_bus_test.cpp | 133 ++++ test/mission_adapters_test.cpp | 360 ---------- test/mission_lifecycle_test.cpp | 356 ++++++++++ test/mission_manager_test.cpp | 405 +++++++++++ test/mission_test_utils.h | 177 +++++ test/plugin_registry_test.cpp | 287 ++++++++ 120 files changed, 12204 insertions(+), 1886 deletions(-) create mode 100644 build-standalone-codex-5j6ZZh/CMakeCache.txt create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake create mode 100755 build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeSystem.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100755 build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CompilerIdCXX/a.out create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/CMakeError.log create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/CMakeOutput.log create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets-noconfig.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/Makefile.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/Makefile2 create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/TargetDirectories.txt create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/cmake.check_cache create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/CXX.includecache create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/build.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/cmake_clean.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/depend.internal create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/depend.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/flags.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/link.txt create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/progress.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/event.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/types.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/CXX.includecache create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/DependInfo.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/build.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/cmake_clean.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/depend.internal create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/depend.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/flags.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/link.txt create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/progress.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/CXX.includecache create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/DependInfo.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/build.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/cmake_clean.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/depend.internal create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/depend.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/flags.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/link.txt create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/progress.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/progress.marks create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/CXX.includecache create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/DependInfo.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/build.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/cmake_clean.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/depend.internal create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/depend.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/flags.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/link.txt create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/progress.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/CXX.includecache create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/DependInfo.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/build.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/cmake_clean.cmake create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/depend.internal create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/depend.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/flags.make create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/link.txt create mode 100644 build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/progress.make create mode 100644 build-standalone-codex-5j6ZZh/Makefile create mode 100644 build-standalone-codex-5j6ZZh/cmake_install.cmake create mode 100755 build-standalone-codex-5j6ZZh/libmission_adapters.so create mode 100755 build-standalone-codex-5j6ZZh/libmission_adapters_goal_source.so create mode 100755 build-standalone-codex-5j6ZZh/libmission_adapters_vda5050_source.so create mode 100755 build-standalone-codex-5j6ZZh/robot_control_example create mode 100755 build-standalone-codex-5j6ZZh/vda5050_order_demo delete mode 100644 cfg/stanley_local_planner_params.yaml create mode 100644 docs/PLUGIN_GUIDE.md create mode 100644 examples/robot_control_example.cpp create mode 100644 examples/vda5050_order_demo.cpp create mode 100644 include/mission_adapters/mission_config.h delete mode 100644 include/mission_adapters/mission_excutor.h create mode 100644 include/mission_adapters/mission_executor.h create mode 100644 include/mission_adapters/mission_request.h create mode 100644 include/mission_adapters/navigation_client.h create mode 100644 include/mission_adapters/plugin_registry.h create mode 100644 plugins/goal_source_adapter.cpp create mode 100644 plugins/goal_source_adapter.h create mode 100644 plugins/vda5050_source_adapter.cpp create mode 100644 plugins/vda5050_source_adapter.h create mode 100644 src/event.cpp create mode 100644 src/event_processor.cpp delete mode 100644 src/mission_adapters.cpp create mode 100644 src/mission_config.cpp create mode 100644 src/mission_executor.cpp create mode 100644 src/mission_manager.cpp create mode 100644 src/plugin_registry.cpp delete mode 100644 src/robot_control_test.cpp create mode 100644 src/types.cpp create mode 100644 test/adapter_test.cpp create mode 100644 test/config/mission_adapters_params.yaml create mode 100644 test/event_bus_test.cpp delete mode 100644 test/mission_adapters_test.cpp create mode 100644 test/mission_lifecycle_test.cpp create mode 100644 test/mission_manager_test.cpp create mode 100644 test/mission_test_utils.h create mode 100644 test/plugin_registry_test.cpp diff --git a/CMakeLists.txt b/CMakeLists.txt index 95e1ed6..ead07f2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,8 +1,8 @@ cmake_minimum_required(VERSION 3.0.2) -project(mission_adapters VERSION 1.0.0 LANGUAGES CXX) +project(mission_adapters VERSION 0.2.0 LANGUAGES CXX) # ======================================================== -# Detect build mode +# Build mode detection # ======================================================== if(DEFINED CATKIN_DEVEL_PREFIX OR DEFINED CATKIN_TOPLEVEL) set(BUILDING_WITH_CATKIN TRUE) @@ -12,6 +12,7 @@ else() message(STATUS "Building mission_adapters with Standalone CMake") endif() + # ======================================================== # C++ Standard # ======================================================== @@ -19,18 +20,24 @@ set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) -# ======================================================== -# Common dependencies -# ======================================================== -find_package(PCL REQUIRED) -find_package(OpenMP REQUIRED) -find_package(Boost REQUIRED COMPONENTS system) -find_package(Eigen REQUIRED) # ======================================================== -# Standalone mode +# Common dependencies +# +# Chỉ những thứ code thật sự dùng: message contract (robot_protocol_msgs / robot_geometry_msgs), +# tiện ích ROS-like (robot_cpp / robot_time) và Boost header (boost::shared_ptr trong message). +# PCL / OpenMP / Eigen của bản trước là di sản copy từ template planner, gói này không dùng. # ======================================================== -if (NOT BUILDING_WITH_CATKIN) +# Boost.DLL cần system + filesystem để nạp plugin theo library_path. +find_package(Boost REQUIRED COMPONENTS system filesystem) +find_package(Threads REQUIRED) +find_package(yaml-cpp REQUIRED) + + +# ======================================================== +# Standalone configuration +# ======================================================== +if(NOT BUILDING_WITH_CATKIN) set(CMAKE_POSITION_INDEPENDENT_CODE ON) @@ -38,174 +45,154 @@ if (NOT BUILDING_WITH_CATKIN) set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) set(CMAKE_BUILD_RPATH "${CMAKE_BINARY_DIR}") - # ⚠️ NOTE: Đây KHÔNG phải package thật -> chỉ để placeholder + # Test/ -> src/AMR_T800/pnkx_nav_core/src + set(PNKX_NAV_CORE_SRC_DIR + "${CMAKE_CURRENT_SOURCE_DIR}/../../pnkx_nav_core/src" + ) + + # Test/ -> T800_ws/devel/lib + set(WORKSPACE_DEVEL_LIB_DIR + "${CMAKE_CURRENT_SOURCE_DIR}/../../../../devel/lib" + ) + + file(GLOB STANDALONE_PACKAGE_INCLUDE_DIRS + LIST_DIRECTORIES true + + ${PNKX_NAV_CORE_SRC_DIR}/*/include + ${PNKX_NAV_CORE_SRC_DIR}/*/*/include + ${PNKX_NAV_CORE_SRC_DIR}/*/*/*/include + ${PNKX_NAV_CORE_SRC_DIR}/*/*/*/*/include + ) + + set(STANDALONE_INCLUDE_DIRS + ${STANDALONE_PACKAGE_INCLUDE_DIRS} + + /usr/local/include + ) + set(PACKAGES_DIR - robot_costmap_2d - robot_nav_core - robot_nav_core2 - robot_nav_msgs - robot_std_msgs - robot_geometry_msgs robot_cpp - robot_tf3_geometry_msgs - robot_visualization_msgs - robot_nav_2d_utils - data_convert + robot_time + robot_xmlrpcpp ) - find_library(TF3_LIBRARY - NAMES tf3 - PATHS /usr/lib /usr/local/lib /usr/lib/x86_64-linux-gnu - ) - - if(NOT TF3_LIBRARY) - message(FATAL_ERROR "❌ tf3 library not found") + if(EXISTS ${WORKSPACE_DEVEL_LIB_DIR}) + link_directories(${WORKSPACE_DEVEL_LIB_DIR}) endif() + link_directories(/usr/local/lib) + # ======================================================== -# Catkin mode +# Catkin configuration # ======================================================== else() find_package(catkin REQUIRED COMPONENTS - robot_costmap_2d - robot_nav_core - robot_nav_core2 - robot_nav_msgs - robot_std_msgs - robot_geometry_msgs robot_cpp - robot_tf3_geometry_msgs - robot_visualization_msgs - robot_nav_2d_utils - data_convert + robot_time + robot_geometry_msgs + robot_protocol_msgs + robot_std_msgs ) - find_library(TF3_LIBRARY - NAMES tf3 - PATHS /usr/lib /usr/local/lib /usr/lib/x86_64-linux-gnu - ) - - if(NOT TF3_LIBRARY) - message(FATAL_ERROR "❌ tf3 library not found") - endif() - catkin_package( - INCLUDE_DIRS include - LIBRARIES ${PROJECT_NAME} + INCLUDE_DIRS + include + + LIBRARIES + mission_adapters + CATKIN_DEPENDS - robot_costmap_2d - robot_nav_core - robot_nav_core2 - robot_nav_msgs - robot_std_msgs - robot_geometry_msgs robot_cpp - robot_tf3_geometry_msgs - robot_visualization_msgs - robot_nav_2d_utils - data_convert - DEPENDS PCL Boost + robot_time + robot_geometry_msgs + robot_protocol_msgs + robot_std_msgs + + DEPENDS + Boost ) - include_directories( - include + include_directories(include) + + # SYSTEM: header của dependency (robot_cpp/console.h khai hàng chục hằng màu không dùng) sẽ ngập + # warning dưới -Wall -Wextra và che mất warning của chính gói này. + include_directories(SYSTEM ${catkin_INCLUDE_DIRS} - ${PCL_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} ) endif() -# ======================================================== -# Libraries -# ======================================================== -# # utils lib -# add_library(${PROJECT_NAME}_utils SHARED -# src/angle_utils.cpp -# src/config.cpp -# ) - -# main planner lib -add_library(${PROJECT_NAME} SHARED - src/mission_adapters.cpp +# ======================================================== +# Core library +# ======================================================== +add_library(mission_adapters SHARED + src/types.cpp + src/event.cpp + src/mission_manager.cpp + src/mission_executor.cpp + src/event_processor.cpp + src/mission_config.cpp + src/plugin_registry.cpp ) +# Gói này KHÔNG kế thừa cờ -w của pnkx_nav_core: warning ở đây phải nhìn thấy được. +target_compile_options(mission_adapters PRIVATE -Wall -Wextra) + +target_include_directories(mission_adapters + PUBLIC + $ + $ +) + + # ======================================================== -# Catkin linking +# Linking # ======================================================== if(BUILDING_WITH_CATKIN) - # add_dependencies(${PROJECT_NAME}_utils ${catkin_EXPORTED_TARGETS}) - add_dependencies(${PROJECT_NAME} ${catkin_EXPORTED_TARGETS}) + add_dependencies(mission_adapters + ${${PROJECT_NAME}_EXPORTED_TARGETS} + ${catkin_EXPORTED_TARGETS} + ) - # target_include_directories(${PROJECT_NAME}_utils - # PUBLIC - # $ - # $ - # ) - - target_include_directories(${PROJECT_NAME} + target_link_libraries(mission_adapters PUBLIC - $ - $ + ${catkin_LIBRARIES} + + PRIVATE + Boost::boost + Boost::system + Boost::filesystem + Threads::Threads + ${CMAKE_DL_LIBS} + yaml-cpp ) - # target_link_libraries(${PROJECT_NAME}_utils - # PUBLIC ${catkin_LIBRARIES} - # PRIVATE Boost::system - # ${TF3_LIBRARY} - # ) - - target_link_libraries(${PROJECT_NAME} - # PUBLIC ${PROJECT_NAME}_utils - PUBLIC ${catkin_LIBRARIES} - PUBLIC ${PCL_LIBRARIES} - PRIVATE Boost::system - ${TF3_LIBRARY} - OpenMP::OpenMP_CXX - ) - -# ======================================================== -# Standalone linking -# ======================================================== else() - # target_include_directories(${PROJECT_NAME}_utils - # PUBLIC - # $ - # $ - # ) + target_include_directories(mission_adapters + PRIVATE + ${STANDALONE_INCLUDE_DIRS} + ${Boost_INCLUDE_DIRS} + ) - target_include_directories(${PROJECT_NAME} + target_link_libraries(mission_adapters PUBLIC - $ - $ + ${PACKAGES_DIR} + + PRIVATE + Boost::boost + Boost::system + Boost::filesystem + Threads::Threads + ${CMAKE_DL_LIBS} + yaml-cpp ) - # target_link_libraries(${PROJECT_NAME}_utils - # PUBLIC ${PACKAGES_DIR} # ⚠️ placeholder - # PRIVATE Boost::system - # ${TF3_LIBRARY} - # ) - - target_link_libraries(${PROJECT_NAME} - # PUBLIC ${PROJECT_NAME}_utils - PUBLIC ${PACKAGES_DIR} # ⚠️ placeholder - PUBLIC ${PCL_LIBRARIES} - PRIVATE Boost::system - ${TF3_LIBRARY} - OpenMP::OpenMP_CXX - ) - - # set_target_properties(${PROJECT_NAME}_utils PROPERTIES - # LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} - # BUILD_RPATH "${CMAKE_BINARY_DIR}" - # INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib" - # ) - - set_target_properties(${PROJECT_NAME} PROPERTIES + set_target_properties(mission_adapters PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} BUILD_RPATH "${CMAKE_BINARY_DIR}" INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib" @@ -213,12 +200,110 @@ else() endif() + +# ======================================================== +# Plugins — mỗi nguồn mission là một .so riêng. +# +# Tên file .so phải khớp khoá `library_path` trong +# `pnkx_nav_core/config/mission_adapters_params.yaml`; tên symbol export phải khớp khoá `type` +# trong `mission_sources`. Lệch một trong hai thì build vẫn sạch còn runtime báo "không tìm thấy". +# ======================================================== +set(MISSION_ADAPTERS_PLUGIN_TARGETS + mission_adapters_goal_source + mission_adapters_vda5050_source +) + +add_library(mission_adapters_goal_source SHARED plugins/goal_source_adapter.cpp) +add_library(mission_adapters_vda5050_source SHARED plugins/vda5050_source_adapter.cpp) + +foreach(plugin_target ${MISSION_ADAPTERS_PLUGIN_TARGETS}) + target_compile_options(${plugin_target} PRIVATE -Wall -Wextra) + + set_target_properties(${plugin_target} PROPERTIES POSITION_INDEPENDENT_CODE ON) + + target_include_directories(${plugin_target} + PUBLIC + $ + ) + + target_link_libraries(${plugin_target} + PUBLIC + mission_adapters + + PRIVATE + Boost::boost + Threads::Threads + ) + + if(NOT BUILDING_WITH_CATKIN) + target_include_directories(${plugin_target} PRIVATE ${STANDALONE_INCLUDE_DIRS}) + target_link_libraries(${plugin_target} PRIVATE ${PACKAGES_DIR}) + + set_target_properties(${plugin_target} PROPERTIES + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} + BUILD_RPATH "${CMAKE_BINARY_DIR}" + INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib" + ) + endif() +endforeach() + + +# ======================================================== +# Example +# +# Có build để tài liệu không trôi khỏi API: đổi contract mà quên ví dụ thì build gãy ngay. +# ======================================================== +option(BUILD_MISSION_ADAPTERS_EXAMPLES "Build mission_adapters examples" ON) + +if(BUILD_MISSION_ADAPTERS_EXAMPLES) + + add_executable(robot_control_example examples/robot_control_example.cpp) + + target_compile_options(robot_control_example PRIVATE -Wall -Wextra) + + target_link_libraries(robot_control_example + PRIVATE + mission_adapters + Threads::Threads + ) + + if(NOT BUILDING_WITH_CATKIN) + target_include_directories(robot_control_example + PRIVATE + ${STANDALONE_INCLUDE_DIRS} + ) + + target_link_libraries(robot_control_example PRIVATE ${PACKAGES_DIR}) + endif() + + # Demo: chạy một VDA5050 Order qua VDA5050SourceAdapter và in ra các chặng thu được. + # Link thẳng plugin source adapter thay vì nạp qua boost::dll — demo chỉ cần xem kết quả cắt + # chặng, không cần kiểm tra đường nạp plugin. + add_executable(vda5050_order_demo examples/vda5050_order_demo.cpp) + + target_compile_options(vda5050_order_demo PRIVATE -Wall -Wextra) + + target_link_libraries(vda5050_order_demo + PRIVATE + mission_adapters + mission_adapters_vda5050_source + Threads::Threads + ) + + if(NOT BUILDING_WITH_CATKIN) + target_include_directories(vda5050_order_demo PRIVATE ${STANDALONE_INCLUDE_DIRS}) + target_link_libraries(vda5050_order_demo PRIVATE ${PACKAGES_DIR}) + endif() + +endif() + + # ======================================================== # Install # ======================================================== if(BUILDING_WITH_CATKIN) - install(TARGETS ${PROJECT_NAME} + install(TARGETS mission_adapters ${MISSION_ADAPTERS_PLUGIN_TARGETS} ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION} @@ -229,15 +314,9 @@ if(BUILDING_WITH_CATKIN) FILES_MATCHING PATTERN "*.h" ) - if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/plugins.xml) - install(FILES plugins.xml - DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} - ) - endif() - else() - install(TARGETS ${PROJECT_NAME} + install(TARGETS mission_adapters ${MISSION_ADAPTERS_PLUGIN_TARGETS} EXPORT ${PROJECT_NAME}-targets ARCHIVE DESTINATION lib LIBRARY DESTINATION lib @@ -255,56 +334,71 @@ else() FILES_MATCHING PATTERN "*.h" ) - if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/plugins.xml) - install(FILES plugins.xml - DESTINATION share/${PROJECT_NAME} - ) - endif() - endif() + # ======================================================== -# Unit Test +# Tests +# +# Gói này đăng ký test với catkin/ctest (chạy được qua `catkin_make run_tests`) VÀ mở +# EXCLUDE_FROM_ALL để binary có mặt sau `catkin_make` thường — chạy thẳng +# ./devel/lib/mission_adapters/ theo đúng quy trình verify của repo. # ======================================================== -if(CATKIN_ENABLE_TESTING) +if(CATKIN_ENABLE_TESTING AND BUILDING_WITH_CATKIN) - find_package(catkin REQUIRED COMPONENTS - robot_costmap_2d - robot_nav_core - robot_nav_core2 - robot_nav_msgs - robot_std_msgs - robot_geometry_msgs - robot_cpp - robot_tf3_geometry_msgs - robot_visualization_msgs - robot_nav_2d_utils - data_convert - ) - - message(STATUS "CATKIN_ENABLE_TESTING=${CATKIN_ENABLE_TESTING}") - - if(COMMAND catkin_add_gtest) - message(STATUS "catkin_add_gtest exists") - else() + if(NOT COMMAND catkin_add_gtest) message(FATAL_ERROR "catkin_add_gtest NOT FOUND") endif() - catkin_add_gtest(test_mission_adapters - test/mission_adapters_test.cpp + set(MISSION_ADAPTERS_TESTS + event_bus_test + adapter_test + mission_manager_test + mission_lifecycle_test + plugin_registry_test ) - if(TARGET test_mission_adapters) - target_link_libraries(test_mission_adapters - mission_adapters - ${catkin_LIBRARIES} - pthread - ) + foreach(test_name ${MISSION_ADAPTERS_TESTS}) + catkin_add_gtest(${test_name} test/${test_name}.cpp) - target_include_directories(test_mission_adapters PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR}/include - ${catkin_INCLUDE_DIRS} - ) - endif() + if(TARGET ${test_name}) + set_target_properties(${test_name} PROPERTIES EXCLUDE_FROM_ALL FALSE) + + target_compile_options(${test_name} PRIVATE -Wall -Wextra) + + target_include_directories(${test_name} + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${CMAKE_CURRENT_SOURCE_DIR}/plugins + ${CMAKE_CURRENT_SOURCE_DIR}/test + ) + + target_include_directories(${test_name} SYSTEM + PRIVATE + ${catkin_INCLUDE_DIRS} + ) + + # catkin_add_gtest dùng target_link_libraries dạng plain, nên phần bổ sung cũng phải plain. + # + # Test link thẳng plugin .so để kiểm logic chuyển đổi ở mức unit; đường nạp qua Boost.DLL + # được kiểm riêng trong plugin_registry_test. + target_link_libraries(${test_name} + mission_adapters + ${MISSION_ADAPTERS_PLUGIN_TARGETS} + ${catkin_LIBRARIES} + pthread + ) + + # plugin_registry_test nạp .so từ devel/lib theo library_path, nên cần cả hai plugin đã build. + add_dependencies(${test_name} ${MISSION_ADAPTERS_PLUGIN_TARGETS}) + + # Đường tới cây config và thư mục .so của test, để binary tự trỏ đúng chỗ khi chạy qua ctest + # (ctest không mang theo PNKX_NAV_CORE_CONFIG_DIR hay LD_LIBRARY_PATH của shell). + target_compile_definitions(${test_name} PRIVATE + MISSION_ADAPTERS_TEST_CONFIG_DIR="${CMAKE_CURRENT_SOURCE_DIR}/test/config" + MISSION_ADAPTERS_TEST_LIBRARY_DIR="${CATKIN_DEVEL_PREFIX}/lib" + ) + endif() + endforeach() endif() diff --git a/README.md b/README.md index 5728f22..8f22980 100644 --- a/README.md +++ b/README.md @@ -1,461 +1,195 @@ -# Mission Adapters +# mission_adapters -Mission Adapters là một framework quản lý nhiệm vụ (Mission Management Framework) được xây dựng bằng C++ thuần, hướng tới các hệ thống AGV/AMR và tương thích với mô hình nhiệm vụ của VDA5050. +Lớp mission độc lập ROS: nhận yêu cầu từ nguồn ngoài (goal đơn lẻ, VDA5050 Order), chuyển thành hàng +đợi mission, và giữ trạng thái của hàng đợi đó. -Framework cung cấp: +Gói **không biết** navigation runtime nào đang chạy phía sau. Mission đi xuống qua cổng +`NavigationClient`, kết quả quay về theo `MissionId`. Nhờ vậy cùng một lớp mission dùng lại được cho +runtime khác, và test được mà không cần robot. -* Chuyển đổi Goal hoặc VDA5050 Order thành Mission. -* Quản lý hàng đợi Mission. -* Xử lý Event bất đồng bộ. -* Điều phối Mission theo trạng thái Robot. -* Hỗ trợ Pause / Resume / Cancel / Emergency. -* Tách biệt Mission Scheduling và Mission Execution. -* Không phụ thuộc ROS. +Nguồn mission là plugin nạp bằng Boost.DLL theo khoá `library_path` trong YAML — xem +[docs/PLUGIN_GUIDE.md](docs/PLUGIN_GUIDE.md). ---- - -# Kiến trúc tổng thể +## Luồng runtime ```text -Order / Goal - │ - ▼ -+------------------+ -| EventProcessor | -+------------------+ - │ - ▼ -+------------------+ -| MissionManager | -+------------------+ - │ - ▼ -+------------------+ -| MissionExecutor | -+------------------+ - │ - ▼ - Navigation Stack - (MoveBase, MPPI, - Pure Pursuit...) + host (MQTT / OPC-UA / REST / UI) + │ goalEvent / orderEvent / submitRequest(MissionRequest) + ▼ + ┌──────────────────┐ tra schema ┌────────────────┐ + │ EventProcessor │ ──────────────► │ PluginRegistry │ (các .so nguồn mission) + │ (thread event) │ ◄────────────── └────────────────┘ + └──────────────────┘ ConversionResult + │ submit(missions) / append(missions) + ▼ + ┌──────────────────┐ + │ MissionManager │ hàng đợi + MissionState, cấp MissionId + └──────────────────┘ + │ nextMission() / takePendingCancel() + ▼ + ┌──────────────────┐ + │ MissionExecutor │ thread DUY NHẤT phát lệnh ra ngoài + │ (thread exec) │ + └──────────────────┘ + │ NavigationClient::dispatch(mission) / cancelActive(id) + ▼ + navigation runtime + │ navDoneEvent(id) / navFailedEvent(id) + └──────────────────────────► quay lại EventProcessor ``` ---- +## Bất biến quan trọng -# Thành phần chính +Đây là những tính chất mà bộ test khoá lại; đọc phần này trước khi sửa code. -## Mission +- **Mọi outcome mang `MissionId`.** `navDoneEvent(id)` / `navFailedEvent(id)` chỉ được chấp nhận khi + `id` khớp mission đang chạy. Outcome đến trễ của một mission đã bị thay thế bị loại bỏ kèm log — + nếu không, kết quả của chặng cũ sẽ "hoàn thành" chặng mới mà robot chưa hề chạy. +- **`submit()` với danh sách rỗng là no-op tuyệt đối.** Một order lỗi không phải lệnh huỷ việc đang + chạy; nó không được đụng tới hàng đợi. +- **Mọi đường thoát của một mission đều bảo navigation dừng.** Bị thay thế (preempt), bị huỷ, + emergency, quá hạn — tất cả đều đi qua `NavigationClient::cancelActive()`. Mission layer quên + mission mà không bảo navigation dừng thì robot vẫn chạy tiếp tới goal cũ. +- **Thứ tự sự kiện = thứ tự phát sinh (FIFO).** Phát order rồi huỷ ngay thì huỷ phải được xử lý sau + order, nếu không robot chạy đúng cái người dùng vừa huỷ. Ngoại lệ duy nhất là emergency: nó bật cờ + atomic ngay tại chỗ gọi nên độ trễ phản ứng không phụ thuộc độ dài hàng đợi. +- **`nextMission()` trả mỗi mission đúng một lần**, tại đúng bước chuyển `QUEUED → RUNNING`. Bên gọi + không phải tự khử trùng lặp. +- **Mission bất biến sau khi submit.** `MissionManager` gán `id` rồi chia sẻ dưới dạng + `shared_ptr` — ba thread đọc chung mà không cần khoá. +- **`MissionManager` không bao giờ gọi ra ngoài khi đang giữ khoá.** Nó chỉ ghi "mission này cần + được dừng" vào ô pending-cancel; `MissionExecutor` mới là thread thực hiện lời gọi đó. -Đơn vị thực thi cơ bản. +## State machine + +```text +IDLE ──submit──► QUEUED ──dequeue──► RUNNING ──nav_done──► còn mission? ──có──► QUEUED + │ (nav + action đều xong) │ + │ nav_failed / mission_timeout │ không + ▼ ▼ + FAILED ──submit mới──► QUEUED COMPLETED ──submit mới──► QUEUED + +PAUSED ◄── pause / resume ──► (state trước đó) +cancel (mọi state active) ──► CANCELLED ──submit mới──► QUEUED +EMERGENCY: từ MỌI state; clear_emergency ──► CLEAR_EMERGENCY ──submit mới──► QUEUED +``` + +`nav_done(id)` nghĩa là **cả chặng** hoàn tất — navigation lẫn action. Mission layer không có state +chờ action riêng: action do navigation runtime thực thi, và mission layer giữ nguyên `RUNNING` trọn +chặng. + +Mọi lần đổi trạng thái được log một dòng `from -> to (lý do, mission id)` ở mức info, và chỉ khi +state đổi thật. + +## Kiểu dữ liệu ```cpp +using MissionId = std::uint64_t; // 0 = kInvalidMissionId + class Mission { public: - int sequenceId; - - MissionType type; - - int priority; - - PoseStamped start; - - PoseStamped goal; - - std::vector nodes; - - std::vector edges; - - std::vector actions; + MissionId id; // MissionManager cấp khi submit, đơn điệu tăng + MissionType type; // SIMPLE_GOAL | VDA5050_ORDER + bool has_goal; // false = mission chỉ-có-action, navigation bỏ qua phần di chuyển + robot_geometry_msgs::PoseStamped start; // chỉ hợp lệ khi has_goal + robot_geometry_msgs::PoseStamped goal; // chỉ hợp lệ khi has_goal + std::vector nodes; + std::vector edges; + std::vector actions; // đã sắp theo sequenceId, đi qua nguyên vẹn }; ``` -Mission có thể được tạo từ: +Mission là **self-contained**: consumer không phải suy goal ra từ `nodes.back()`. Adapter VDA5050 +set sẵn `start`/`goal` từ `nodePosition` (theta `[rad]` → quaternion quanh trục z). -* Goal đơn giản -* VDA5050 Order +`has_goal == false` bắt buộc đi kèm ít nhất một action; core từ chối cả lô nếu adapter vi phạm. ---- +## VDA5050 conformance -## Action +`VDA5050SourceAdapter` chịu trách nhiệm ba điểm: -Đại diện cho một hành động tại Node hoặc Edge. +| Điểm | Hành vi | +|---|---| +| `released` (base/horizon) | Chỉ phần base được thực thi. Horizon là dự định của fleet manager, chưa được phép chạy. Order không điền `released` ở đâu cả thì cả order được coi là base, kèm log cảnh báo. | +| `orderId` / `orderUpdateId` | `orderId` mới → thay hàng đợi (`kReplace`). Cùng `orderId` + `orderUpdateId` lớn hơn → chỉ sinh phần vừa release thêm và **nối tiếp** (`kAppend`). `orderUpdateId` không mới hơn → từ chối. | +| `goal` / `start` | Set từ node cuối / node đầu của chặng, trong frame `global_frame` (mặc định `map`). VDA5050 `mapId` là danh tính bản đồ, không phải frame TF, nên không dùng làm `frame_id`. | + +Chặng được cắt tại mỗi node có action: robot chạy tới node đó rồi mới thực hiện action. Action ngay +tại node xuất phát sinh ra một chặng `has_goal == false`. + +## Config + +Bản runtime: `pnkx_nav_core/config/mission_adapters_params.yaml`. +Bản test: `test/config/mission_adapters_params.yaml`, chỉ được đọc khi chạy kèm +`PNKX_NAV_CORE_CONFIG_DIR`. + +| Khoá | Đơn vị / mặc định | Ý nghĩa | +|---|---|---| +| `mission_adapters/mission_sources` | — | Danh sách nguồn mission `{name, type}` | +| `mission_adapters/mission_timeout` | `[s]`, `0.0` | Trần thời gian cho một chặng; `0` = tắt. Quá hạn → chặng thất bại **và** navigation được bảo dừng | +| `mission_adapters/clear_queue_on_failure` | `true` | Một chặng hỏng thì xoá sạch hàng đợi. Đặt `false` chỉ khi các mission độc lập với nhau | +| `/library_path` | — | Tên `.so` của plugin — **thiếu khoá này là lỗi runtime phổ biến nhất** | + +## Dùng ```cpp -class Action -{ -public: - int sequenceId; +mission_adapters::PluginRegistry registry; +robot::NodeHandle nh; +registry.loadFromConfig(nh); // nạp nguồn mission từ YAML - ActionType type; +mission_adapters::MissionConfig config; +config.loadFromParams(nh); - robot_protocol_msgs::Action action; -}; +mission_adapters::MissionManager manager(config); +mission_adapters::EventProcessor processor(manager, registry); +mission_adapters::MissionExecutor executor(manager); + +executor.setNavigationClient(&my_navigation_client); // non-owning, phải sống lâu hơn executor +processor.start(); +executor.start(); + +processor.goalEvent(goal); // hoặc orderEvent(order) / submitRequest(request) +// ... navigation runtime gọi processor.navDoneEvent(mission->id) khi chặng xong ... ``` -Các Action sẽ được sắp xếp theo `sequenceId`. +Ví dụ đầy đủ: [`examples/robot_control_example.cpp`](examples/robot_control_example.cpp) — có build, +nên nó không thể trôi khỏi API. ---- +## Build và test -## GoalAdapter +```bash +catkin_make --pkg mission_adapters +source devel/setup.bash -Chuyển đổi Goal thành Mission. +./devel/lib/mission_adapters/event_bus_test +./devel/lib/mission_adapters/adapter_test +./devel/lib/mission_adapters/mission_manager_test +./devel/lib/mission_adapters/mission_lifecycle_test -```cpp -GoalAdapter adapter; - -auto missions = - adapter.convert(goal); +PNKX_NAV_CORE_CONFIG_DIR=src/AMR_T800/Test/mission_adapters/test/config \ + ./devel/lib/mission_adapters/plugin_registry_test ``` -Kết quả: +Test cũng đăng ký với ctest: `cd build && ctest -R mission_adapters --output-on-failure`. -```text -Goal - └── Mission -``` +## Thread ---- +| Thread | Sở hữu | Đánh thức bởi | +|---|---|---| +| `EventProcessor` | hàng đợi sự kiện, gọi adapter | `EventBus::pop()` chờ sự kiện | +| `MissionExecutor` | mọi lời gọi xuống `NavigationClient` | `MissionManager::waitForWork()` chờ condition variable | +| host | phát sự kiện, nhận outcome | — | -## VDA5050Adapter +Chuyển đổi payload → mission chạy trên thread của `EventProcessor`, không phải thread host: adapter +được phép có state, và chuyển đổi trên nhiều thread host sẽ tranh chấp state đó. -Chuyển đổi Order thành danh sách Mission. +`MissionExecutor` không poll. Trong một vòng nó luôn **cancel trước, dispatch sau** — chặng cũ phải +được bảo dừng trước khi chặng mới bắt đầu. -Ví dụ: +## Chưa có -```text -N1 ---- N2 ---- N3(Action) - | - | - V - Mission A - -N3 ---- N4 ---- N5(Action) - | - | - V - Mission B -``` - -Order sẽ được chia thành nhiều Mission tại các Node chứa Action. - ---- - -## EventBus - -Hàng đợi ưu tiên cho các Event. - -```cpp -std::priority_queue< - Event, - std::vector, - EventCompare>; -``` - -Priority nhỏ hơn sẽ được xử lý trước. - -```cpp -EMERGENCY = 0 -CANCEL = 1 -RESUME = 2 -PAUSE = 3 -NAV_DONE = 4 -ORDER = 5 -``` - ---- - -## EventProcessor - -Tiếp nhận Event từ bên ngoài. - -Ví dụ: - -```cpp -event_processor.orderEvent(order); - -event_processor.pauseEvent(); - -event_processor.resumeEvent(); - -event_processor.cancelEvent(); - -event_processor.emergencyEvent(); -``` - -EventProcessor hoạt động trên một worker thread riêng. - ---- - -## MissionManager - -Quản lý trạng thái và hàng đợi Mission. - -Các trạng thái hỗ trợ: - -```cpp -IDLE -QUEUED -RUNNING -PAUSED -WAITING_ACTION -RECOVERY -COMPLETED -FAILED -CANCELLED -EMERGENCY -``` - -Chức năng: - -* Submit Mission -* Lấy Mission tiếp theo -* Pause -* Resume -* Cancel -* Emergency -* Navigation Done -* Navigation Failed - ---- - -## MissionExecutor - -Thread chuyên lấy Mission từ MissionManager. - -Khi có Mission mới, callback sẽ được gọi. - -```cpp -using MissionCallback = - std::function< - void( - const std::shared_ptr& - ) - >; -``` - -Đăng ký callback: - -```cpp -mission_executor.setMissionCallback( - [&](const std::shared_ptr& mission) - { - executeMission(*mission); - }); -``` - ---- - -# Luồng hoạt động - -## Goal - -```text -Goal - │ - ▼ -GoalAdapter - │ - ▼ -Mission - │ - ▼ -MissionManager - │ - ▼ -MissionExecutor - │ - ▼ -Navigation -``` - ---- - -## Order - -```text -Order - │ - ▼ -VDA5050Adapter - │ - ▼ -Mission A -Mission B -Mission C - │ - ▼ -Mission Queue - │ - ▼ -MissionExecutor -``` - ---- - -# Navigation Feedback - -Khi Navigation hoàn thành: - -```cpp -event_processor.navDoneEvent(); -``` - -Khi Navigation thất bại: - -```cpp -event_processor.navFailedEvent(); -``` - -Ví dụ: - -```cpp -auto state = - move_base_ptr_->getFeedback() - ->navigation_state; - -if(state != prev_state_) -{ - if(state == - State::SUCCEEDED) - { - event_processor.navDoneEvent(); - } - - if(state == - State::ABORTED) - { - event_processor.navFailedEvent(); - } - - prev_state_ = state; -} -``` - ---- - -# Ví dụ sử dụng - -## Khởi tạo - -```cpp -MissionManager mission_manager; - -EventProcessor event_processor( - mission_manager); - -MissionExecutor mission_executor( - mission_manager); -``` - ---- - -## Start - -```cpp -event_processor.start(); - -mission_executor.start(); -``` - ---- - -## Đăng ký callback - -```cpp -mission_executor.setMissionCallback( - [&](const std::shared_ptr& mission) - { - executeMission(*mission); - }); -``` - ---- - -## Nhận Order - -```cpp -robot_protocol_msgs::Order order; - -event_processor.orderEvent(order); -``` - ---- - -## Pause - -```cpp -event_processor.pauseEvent(); -``` - ---- - -## Resume - -```cpp -event_processor.resumeEvent(); -``` - ---- - -## Cancel - -```cpp -event_processor.cancelEvent(); -``` - ---- - -## Emergency Stop - -```cpp -event_processor.emergencyEvent(); -``` - ---- - -# Thread Model - -Framework sử dụng 2 worker thread: - -```text -Thread 1 - └─ EventProcessor - -Thread 2 - └─ MissionExecutor -``` - -Navigation Stack hoạt động độc lập. - -```text -Main Thread - │ - ├─ Navigation - │ - ├─ EventProcessor - │ - └─ MissionExecutor -``` - ---- - -# TODO - -Các chức năng dự kiến bổ sung: - -* Action Executor -* WAITING_ACTION state -* ACTION_DONE event -* ACTION_FAILED event -* Recovery Framework -* Mission Priority Queue -* Mission Persistence -* VDA5050 Instant Actions -* Multi-Robot Fleet Support - ---- - -# License - -Internal Project. +- Mission persistence (mất điện giữa order thì hàng đợi mất). +- VDA5050 instant actions. +- Mission priority queue — hàng đợi hiện là FIFO thuần. +- Multi-robot fleet. diff --git a/build-standalone-codex-5j6ZZh/CMakeCache.txt b/build-standalone-codex-5j6ZZh/CMakeCache.txt new file mode 100644 index 0000000..368bfe6 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeCache.txt @@ -0,0 +1,393 @@ +# This is the CMakeCache file. +# For build in directory: /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Build mission_adapters examples +BUILD_MISSION_ADAPTERS_EXAMPLES:BOOL=ON + +//The directory containing a CMake configuration file for Boost. +Boost_DIR:PATH=/usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0 + +Boost_FILESYSTEM_LIBRARY_RELEASE:STRING=/usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.71.0 + +//Path to a file. +Boost_INCLUDE_DIR:PATH=/usr/include + +Boost_SYSTEM_LIBRARY_RELEASE:STRING=/usr/lib/x86_64-linux-gnu/libboost_system.so.1.71.0 + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING= + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-9 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-9 + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=mission_adapters + +//Value Computed by CMake +CMAKE_PROJECT_VERSION:STATIC=0.2.0 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_MAJOR:STATIC=0 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_MINOR:STATIC=2 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_PATCH:STATIC=0 + +//Value Computed by CMake +CMAKE_PROJECT_VERSION_TWEAK:STATIC= + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=/usr/bin/readelf + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//The directory containing a CMake configuration file for boost_filesystem. +boost_filesystem_DIR:PATH=/usr/lib/x86_64-linux-gnu/cmake/boost_filesystem-1.71.0 + +//The directory containing a CMake configuration file for boost_headers. +boost_headers_DIR:PATH=/usr/lib/x86_64-linux-gnu/cmake/boost_headers-1.71.0 + +//The directory containing a CMake configuration file for boost_system. +boost_system_DIR:PATH=/usr/lib/x86_64-linux-gnu/cmake/boost_system-1.71.0 + +//Value Computed by CMake +mission_adapters_BINARY_DIR:STATIC=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh + +//Dependencies for the target +mission_adapters_LIB_DEPENDS:STATIC=general;robot_cpp;general;robot_time;general;robot_xmlrpcpp;general;Boost::system;general;Boost::filesystem;general;dl;general;yaml-cpp; + +//Value Computed by CMake +mission_adapters_SOURCE_DIR:STATIC=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +//Dependencies for the target +mission_adapters_goal_source_LIB_DEPENDS:STATIC=general;mission_adapters;general;robot_cpp;general;robot_time;general;robot_xmlrpcpp; + +//Dependencies for the target +mission_adapters_vda5050_source_LIB_DEPENDS:STATIC=general;mission_adapters;general;robot_cpp;general;robot_time;general;robot_xmlrpcpp; + +//The directory containing a CMake configuration file for yaml-cpp. +yaml-cpp_DIR:PATH=/usr/lib/x86_64-linux-gnu/cmake/yaml-cpp + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: Boost_DIR +Boost_DIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=16 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=3 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR +CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB +CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Test CMAKE_HAVE_LIBC_PTHREAD +CMAKE_HAVE_LIBC_PTHREAD:INTERNAL= +//Have library pthreads +CMAKE_HAVE_PTHREADS_CREATE:INTERNAL= +//Have library pthread +CMAKE_HAVE_PTHREAD_CREATE:INTERNAL=1 +//Have include pthread.h +CMAKE_HAVE_PTHREAD_H:INTERNAL=1 +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.16 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//Details about finding Boost +FIND_PACKAGE_MESSAGE_DETAILS_Boost:INTERNAL=[/usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake][cfound components: system filesystem ][v1.71.0()] +//Details about finding Threads +FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()] +//ADVANCED property for variable: boost_filesystem_DIR +boost_filesystem_DIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: boost_headers_DIR +boost_headers_DIR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: boost_system_DIR +boost_system_DIR-ADVANCED:INTERNAL=1 + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake new file mode 100644 index 0000000..278ef39 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeCXXCompiler.cmake @@ -0,0 +1,88 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "9.4.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") + +set(CMAKE_CXX_PLATFORM_ID "Linux") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_CXX_SIMULATE_VERSION "") + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-9") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-9") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCXX 1) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) +set(CMAKE_COMPILER_IS_MINGW ) +set(CMAKE_COMPILER_IS_CYGWIN ) +if(CMAKE_COMPILER_IS_CYGWIN) + set(CYGWIN 1) + set(UNIX 1) +endif() + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +if(CMAKE_COMPILER_IS_MINGW) + set(MINGW 1) +endif() +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;CPP) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "ELF") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/9;/usr/include/x86_64-linux-gnu/c++/9;/usr/include/c++/9/backward;/usr/lib/gcc/x86_64-linux-gnu/9/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/9;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin b/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeDetermineCompilerABI_CXX.bin new file mode 100755 index 0000000000000000000000000000000000000000..ee268c0505df7bc55aab1046342c263205c720a2 GIT binary patch literal 16560 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 IU}M?802n@gkpKVy literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeSystem.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeSystem.cmake new file mode 100644 index 0000000..8b384d4 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-5.15.0-139-generic") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "5.15.0-139-generic") +set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") + + + +set(CMAKE_SYSTEM "Linux-5.15.0-139-generic") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "5.15.0-139-generic") +set(CMAKE_SYSTEM_PROCESSOR "x86_64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp b/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp new file mode 100644 index 0000000..69cfdba --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CompilerIdCXX/CMakeCXXCompilerId.cpp @@ -0,0 +1,660 @@ +/* This source file must have a .cpp extension so that all C++ compilers + recognize the extension without flags. Borland does not know .cxx for + example. */ +#ifndef __cplusplus +# error "A C compiler has been selected for C++." +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__COMO__) +# define COMPILER_ID "Comeau" + /* __COMO_VERSION__ = VRR */ +# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) +# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) + +#elif defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version) +# define COMPILER_ID "Fujitsu" + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXE) || defined(__CRAYXC) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number components. */ +#ifdef COMPILER_VERSION_MAJOR +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_dialect_default = "INFO" ":" "dialect_default[" +#if CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXE) || defined(__CRAYXC) + require += info_cray[argc]; +#endif + require += info_language_dialect_default[argc]; + (void)argv; + return require; +} diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CompilerIdCXX/a.out b/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CompilerIdCXX/a.out new file mode 100755 index 0000000000000000000000000000000000000000..2881803fe1c1315653cec8eead6766e2c9b69693 GIT binary patch literal 16720 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 e4*oGfdcfhF>oukL>{;1 + +void* test_func(void* data) +{ + return data; +} + +int main(void) +{ + pthread_t thread; + pthread_create(&thread, NULL, test_func, NULL); + pthread_detach(thread); + pthread_join(thread, NULL); + pthread_atfork(NULL, NULL, NULL); + pthread_exit(NULL); + + return 0; +} + +Determining if the function pthread_create exists in the pthreads failed with the following output: +Change Dir: /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/make cmTC_95808/fast && /usr/bin/make -f CMakeFiles/cmTC_95808.dir/build.make CMakeFiles/cmTC_95808.dir/build +make[1]: Entering directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_95808.dir/CheckFunctionExists.cxx.o +/usr/bin/c++ -DCHECK_FUNCTION_EXISTS=pthread_create -o CMakeFiles/cmTC_95808.dir/CheckFunctionExists.cxx.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx +Linking CXX executable cmTC_95808 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_95808.dir/link.txt --verbose=1 +/usr/bin/c++ -DCHECK_FUNCTION_EXISTS=pthread_create -rdynamic CMakeFiles/cmTC_95808.dir/CheckFunctionExists.cxx.o -o cmTC_95808 -lpthreads +/usr/bin/ld: cannot find -lpthreads +collect2: error: ld returned 1 exit status +make[1]: *** [CMakeFiles/cmTC_95808.dir/build.make:87: cmTC_95808] Error 1 +make[1]: Leaving directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' +make: *** [Makefile:121: cmTC_95808/fast] Error 2 + + + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeOutput.log b/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeOutput.log new file mode 100644 index 0000000..24ae17c --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeOutput.log @@ -0,0 +1,265 @@ +The system is: Linux - 5.15.0-139-generic - x86_64 +Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. +Compiler: /usr/bin/c++ +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + +The CXX compiler identification is GNU, found in "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/3.16.3/CompilerIdCXX/a.out" + +Determining if the CXX compiler works passed with the following output: +Change Dir: /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/make cmTC_333d8/fast && /usr/bin/make -f CMakeFiles/cmTC_333d8.dir/build.make CMakeFiles/cmTC_333d8.dir/build +make[1]: Entering directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_333d8.dir/testCXXCompiler.cxx.o +/usr/bin/c++ -o CMakeFiles/cmTC_333d8.dir/testCXXCompiler.cxx.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp/testCXXCompiler.cxx +Linking CXX executable cmTC_333d8 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_333d8.dir/link.txt --verbose=1 +/usr/bin/c++ -rdynamic CMakeFiles/cmTC_333d8.dir/testCXXCompiler.cxx.o -o cmTC_333d8 +make[1]: Leaving directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' + + + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/make cmTC_7ffbf/fast && /usr/bin/make -f CMakeFiles/cmTC_7ffbf.dir/build.make CMakeFiles/cmTC_7ffbf.dir/build +make[1]: Entering directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -v -o CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.16/Modules/CMakeCXXCompilerABI.cpp +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +OFFLOAD_TARGET_NAMES=nvptx-none:hsa +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.2' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-9QDOt0/gcc-9-9.4.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.2) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' + /usr/lib/gcc/x86_64-linux-gnu/9/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.16/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpbase CMakeCXXCompilerABI.cpp -mtune=generic -march=x86-64 -auxbase-strip CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cc9t2Bmv.s +GNU C++14 (Ubuntu 9.4.0-1ubuntu1~20.04.2) version 9.4.0 (x86_64-linux-gnu) + compiled by GNU C version 9.4.0, GMP version 6.2.0, MPFR version 4.0.2, MPC version 1.1.0, isl version isl-0.22.1-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/9" +ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/9/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/9/../../../../x86_64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/include/c++/9 + /usr/include/x86_64-linux-gnu/c++/9 + /usr/include/c++/9/backward + /usr/lib/gcc/x86_64-linux-gnu/9/include + /usr/local/include + /usr/include/x86_64-linux-gnu + /usr/include +End of search list. +GNU C++14 (Ubuntu 9.4.0-1ubuntu1~20.04.2) version 9.4.0 (x86_64-linux-gnu) + compiled by GNU C version 9.4.0, GMP version 6.2.0, MPFR version 4.0.2, MPC version 1.1.0, isl version isl-0.22.1-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 3d1eba838554fa2348dba760e4770469 +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' + as -v --64 -o CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o /tmp/cc9t2Bmv.s +GNU assembler version 2.34 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.34 +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' +Linking CXX executable cmTC_7ffbf +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_7ffbf.dir/link.txt --verbose=1 +/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_7ffbf +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper +OFFLOAD_TARGET_NAMES=nvptx-none:hsa +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.2' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-9QDOt0/gcc-9-9.4.0/debian/tmp-nvptx/usr,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.2) +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_7ffbf' '-shared-libgcc' '-mtune=generic' '-march=x86-64' + /usr/lib/gcc/x86_64-linux-gnu/9/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/9/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper -plugin-opt=-fresolution=/tmp/ccSNHlRU.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_7ffbf /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/9/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/9 -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/9/../../.. CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/9/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_7ffbf' '-shared-libgcc' '-mtune=generic' '-march=x86-64' +make[1]: Leaving directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' + + + +Parsed CXX implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/include/c++/9] + add: [/usr/include/x86_64-linux-gnu/c++/9] + add: [/usr/include/c++/9/backward] + add: [/usr/lib/gcc/x86_64-linux-gnu/9/include] + add: [/usr/local/include] + add: [/usr/include/x86_64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/include/c++/9] ==> [/usr/include/c++/9] + collapse include dir [/usr/include/x86_64-linux-gnu/c++/9] ==> [/usr/include/x86_64-linux-gnu/c++/9] + collapse include dir [/usr/include/c++/9/backward] ==> [/usr/include/c++/9/backward] + collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/9/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/9/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/include/c++/9;/usr/include/x86_64-linux-gnu/c++/9;/usr/include/c++/9/backward;/usr/lib/gcc/x86_64-linux-gnu/9/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] + + +Parsed CXX implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/make cmTC_7ffbf/fast && /usr/bin/make -f CMakeFiles/cmTC_7ffbf.dir/build.make CMakeFiles/cmTC_7ffbf.dir/build] + ignore line: [make[1]: Entering directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp'] + ignore line: [Building CXX object CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.16/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:hsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.2' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-9QDOt0/gcc-9-9.4.0/debian/tmp-nvptx/usr hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] + ignore line: [Thread model: posix] + ignore line: [gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.2) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] + ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/9/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.16/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpbase CMakeCXXCompilerABI.cpp -mtune=generic -march=x86-64 -auxbase-strip CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cc9t2Bmv.s] + ignore line: [GNU C++14 (Ubuntu 9.4.0-1ubuntu1~20.04.2) version 9.4.0 (x86_64-linux-gnu)] + ignore line: [ compiled by GNU C version 9.4.0 GMP version 6.2.0 MPFR version 4.0.2 MPC version 1.1.0 isl version isl-0.22.1-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/9"] + ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/9/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/9/../../../../x86_64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/include/c++/9] + ignore line: [ /usr/include/x86_64-linux-gnu/c++/9] + ignore line: [ /usr/include/c++/9/backward] + ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/9/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/x86_64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C++14 (Ubuntu 9.4.0-1ubuntu1~20.04.2) version 9.4.0 (x86_64-linux-gnu)] + ignore line: [ compiled by GNU C version 9.4.0 GMP version 6.2.0 MPFR version 4.0.2 MPC version 1.1.0 isl version isl-0.22.1-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 3d1eba838554fa2348dba760e4770469] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] + ignore line: [ as -v --64 -o CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o /tmp/cc9t2Bmv.s] + ignore line: [GNU assembler version 2.34 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.34] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] + ignore line: [Linking CXX executable cmTC_7ffbf] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_7ffbf.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_7ffbf ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:hsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.2' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-9-9QDOt0/gcc-9-9.4.0/debian/tmp-nvptx/usr hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] + ignore line: [Thread model: posix] + ignore line: [gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.2) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/9/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/9/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_7ffbf' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] + link line: [ /usr/lib/gcc/x86_64-linux-gnu/9/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/9/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper -plugin-opt=-fresolution=/tmp/ccSNHlRU.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_7ffbf /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/9/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/9 -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/9/../../.. CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/9/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/9/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/9/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccSNHlRU.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [-m] ==> ignore + arg [elf_x86_64] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-export-dynamic] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_7ffbf] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/Scrt1.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crti.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/9/crtbeginS.o] ==> ignore + arg [-L/usr/lib/gcc/x86_64-linux-gnu/9] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/9] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib] + arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/9/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/9/../../..] + arg [CMakeFiles/cmTC_7ffbf.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lstdc++] ==> lib [stdc++] + arg [-lm] ==> lib [m] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [-lc] ==> lib [c] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [/usr/lib/gcc/x86_64-linux-gnu/9/crtendS.o] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/crtn.o] ==> ignore + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/9] ==> [/usr/lib/gcc/x86_64-linux-gnu/9] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/9/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/9/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/9;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] + implicit fwks: [] + + +Determining if the include file pthread.h exists passed with the following output: +Change Dir: /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/make cmTC_6a8e7/fast && /usr/bin/make -f CMakeFiles/cmTC_6a8e7.dir/build.make CMakeFiles/cmTC_6a8e7.dir/build +make[1]: Entering directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_6a8e7.dir/CheckIncludeFile.cxx.o +/usr/bin/c++ -o CMakeFiles/cmTC_6a8e7.dir/CheckIncludeFile.cxx.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx +Linking CXX executable cmTC_6a8e7 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_6a8e7.dir/link.txt --verbose=1 +/usr/bin/c++ -rdynamic CMakeFiles/cmTC_6a8e7.dir/CheckIncludeFile.cxx.o -o cmTC_6a8e7 +make[1]: Leaving directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' + + + +Determining if the function pthread_create exists in the pthread passed with the following output: +Change Dir: /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/make cmTC_5e940/fast && /usr/bin/make -f CMakeFiles/cmTC_5e940.dir/build.make CMakeFiles/cmTC_5e940.dir/build +make[1]: Entering directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_5e940.dir/CheckFunctionExists.cxx.o +/usr/bin/c++ -DCHECK_FUNCTION_EXISTS=pthread_create -o CMakeFiles/cmTC_5e940.dir/CheckFunctionExists.cxx.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx +Linking CXX executable cmTC_5e940 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5e940.dir/link.txt --verbose=1 +/usr/bin/c++ -DCHECK_FUNCTION_EXISTS=pthread_create -rdynamic CMakeFiles/cmTC_5e940.dir/CheckFunctionExists.cxx.o -o cmTC_5e940 -lpthread +make[1]: Leaving directory '/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/CMakeTmp' + + + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx b/build-standalone-codex-5j6ZZh/CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx new file mode 100644 index 0000000..13435e0 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx @@ -0,0 +1,28 @@ +#ifdef CHECK_FUNCTION_EXISTS + +# ifdef __cplusplus +extern "C" +# endif + char + CHECK_FUNCTION_EXISTS(void); +# ifdef __CLASSIC_C__ +int main() +{ + int ac; + char* av[]; +# else +int main(int ac, char* av[]) +{ +# endif + CHECK_FUNCTION_EXISTS(); + if (ac > 1000) { + return *av[0]; + } + return 0; +} + +#else /* CHECK_FUNCTION_EXISTS */ + +# error "CHECK_FUNCTION_EXISTS has to specify the function" + +#endif /* CHECK_FUNCTION_EXISTS */ diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets-noconfig.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets-noconfig.cmake new file mode 100644 index 0000000..15f18f5 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets-noconfig.cmake @@ -0,0 +1,40 @@ +#---------------------------------------------------------------- +# Generated CMake target import file. +#---------------------------------------------------------------- + +# Commands may need to know the format version. +set(CMAKE_IMPORT_FILE_VERSION 1) + +# Import target "mission_adapters::mission_adapters" for configuration "" +set_property(TARGET mission_adapters::mission_adapters APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG) +set_target_properties(mission_adapters::mission_adapters PROPERTIES + IMPORTED_LINK_DEPENDENT_LIBRARIES_NOCONFIG "yaml-cpp" + IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/lib/libmission_adapters.so" + IMPORTED_SONAME_NOCONFIG "libmission_adapters.so" + ) + +list(APPEND _IMPORT_CHECK_TARGETS mission_adapters::mission_adapters ) +list(APPEND _IMPORT_CHECK_FILES_FOR_mission_adapters::mission_adapters "${_IMPORT_PREFIX}/lib/libmission_adapters.so" ) + +# Import target "mission_adapters::mission_adapters_goal_source" for configuration "" +set_property(TARGET mission_adapters::mission_adapters_goal_source APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG) +set_target_properties(mission_adapters::mission_adapters_goal_source PROPERTIES + IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/lib/libmission_adapters_goal_source.so" + IMPORTED_SONAME_NOCONFIG "libmission_adapters_goal_source.so" + ) + +list(APPEND _IMPORT_CHECK_TARGETS mission_adapters::mission_adapters_goal_source ) +list(APPEND _IMPORT_CHECK_FILES_FOR_mission_adapters::mission_adapters_goal_source "${_IMPORT_PREFIX}/lib/libmission_adapters_goal_source.so" ) + +# Import target "mission_adapters::mission_adapters_vda5050_source" for configuration "" +set_property(TARGET mission_adapters::mission_adapters_vda5050_source APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG) +set_target_properties(mission_adapters::mission_adapters_vda5050_source PROPERTIES + IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/lib/libmission_adapters_vda5050_source.so" + IMPORTED_SONAME_NOCONFIG "libmission_adapters_vda5050_source.so" + ) + +list(APPEND _IMPORT_CHECK_TARGETS mission_adapters::mission_adapters_vda5050_source ) +list(APPEND _IMPORT_CHECK_FILES_FOR_mission_adapters::mission_adapters_vda5050_source "${_IMPORT_PREFIX}/lib/libmission_adapters_vda5050_source.so" ) + +# Commands beyond this point should not need to know the version. +set(CMAKE_IMPORT_FILE_VERSION) diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets.cmake new file mode 100644 index 0000000..4ba96ca --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets.cmake @@ -0,0 +1,113 @@ +# Generated by CMake + +if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5) + message(FATAL_ERROR "CMake >= 2.6.0 required") +endif() +cmake_policy(PUSH) +cmake_policy(VERSION 2.6) +#---------------------------------------------------------------- +# Generated CMake target import file. +#---------------------------------------------------------------- + +# Commands may need to know the format version. +set(CMAKE_IMPORT_FILE_VERSION 1) + +# Protect against multiple inclusion, which would fail when already imported targets are added once more. +set(_targetsDefined) +set(_targetsNotDefined) +set(_expectedTargets) +foreach(_expectedTarget mission_adapters::mission_adapters mission_adapters::mission_adapters_goal_source mission_adapters::mission_adapters_vda5050_source) + list(APPEND _expectedTargets ${_expectedTarget}) + if(NOT TARGET ${_expectedTarget}) + list(APPEND _targetsNotDefined ${_expectedTarget}) + endif() + if(TARGET ${_expectedTarget}) + list(APPEND _targetsDefined ${_expectedTarget}) + endif() +endforeach() +if("${_targetsDefined}" STREQUAL "${_expectedTargets}") + unset(_targetsDefined) + unset(_targetsNotDefined) + unset(_expectedTargets) + set(CMAKE_IMPORT_FILE_VERSION) + cmake_policy(POP) + return() +endif() +if(NOT "${_targetsDefined}" STREQUAL "") + message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n") +endif() +unset(_targetsDefined) +unset(_targetsNotDefined) +unset(_expectedTargets) + + +# Compute the installation prefix relative to this file. +get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH) +get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) +get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) +get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) +if(_IMPORT_PREFIX STREQUAL "/") + set(_IMPORT_PREFIX "") +endif() + +# Create imported target mission_adapters::mission_adapters +add_library(mission_adapters::mission_adapters SHARED IMPORTED) + +set_target_properties(mission_adapters::mission_adapters PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include" + INTERFACE_LINK_LIBRARIES "robot_cpp;robot_time;robot_xmlrpcpp" +) + +# Create imported target mission_adapters::mission_adapters_goal_source +add_library(mission_adapters::mission_adapters_goal_source SHARED IMPORTED) + +set_target_properties(mission_adapters::mission_adapters_goal_source PROPERTIES + INTERFACE_LINK_LIBRARIES "mission_adapters::mission_adapters" +) + +# Create imported target mission_adapters::mission_adapters_vda5050_source +add_library(mission_adapters::mission_adapters_vda5050_source SHARED IMPORTED) + +set_target_properties(mission_adapters::mission_adapters_vda5050_source PROPERTIES + INTERFACE_LINK_LIBRARIES "mission_adapters::mission_adapters" +) + +if(CMAKE_VERSION VERSION_LESS 2.8.12) + message(FATAL_ERROR "This file relies on consumers using CMake 2.8.12 or greater.") +endif() + +# Load information for each installed configuration. +get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) +file(GLOB CONFIG_FILES "${_DIR}/mission_adapters-targets-*.cmake") +foreach(f ${CONFIG_FILES}) + include(${f}) +endforeach() + +# Cleanup temporary variables. +set(_IMPORT_PREFIX) + +# Loop over all imported files and verify that they actually exist +foreach(target ${_IMPORT_CHECK_TARGETS} ) + foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} ) + if(NOT EXISTS "${file}" ) + message(FATAL_ERROR "The imported target \"${target}\" references the file + \"${file}\" +but this file does not exist. Possible reasons include: +* The file was deleted, renamed, or moved to another location. +* An install or uninstall procedure did not complete successfully. +* The installation package was faulty and contained + \"${CMAKE_CURRENT_LIST_FILE}\" +but not all the files it references. +") + endif() + endforeach() + unset(_IMPORT_CHECK_FILES_FOR_${target}) +endforeach() +unset(_IMPORT_CHECK_TARGETS) + +# This file does not depend on other imported targets which have +# been exported from the same project but in a separate export set. + +# Commands beyond this point should not need to know the version. +set(CMAKE_IMPORT_FILE_VERSION) +cmake_policy(POP) diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/Makefile.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/Makefile.cmake new file mode 100644 index 0000000..3be5339 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/Makefile.cmake @@ -0,0 +1,131 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "../CMakeLists.txt" + "CMakeFiles/3.16.3/CMakeCXXCompiler.cmake" + "CMakeFiles/3.16.3/CMakeSystem.cmake" + "CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx" + "/usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfigVersion.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/BoostDetectToolset-1.71.0.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_filesystem-1.71.0/boost_filesystem-config-version.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_filesystem-1.71.0/boost_filesystem-config.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_filesystem-1.71.0/libboost_filesystem-variant-shared.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_filesystem-1.71.0/libboost_filesystem-variant-static.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_headers-1.71.0/boost_headers-config-version.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_headers-1.71.0/boost_headers-config.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_system-1.71.0/boost_system-config-version.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_system-1.71.0/boost_system-config.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_system-1.71.0/libboost_system-variant-shared.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/boost_system-1.71.0/libboost_system-variant-static.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/yaml-cpp/yaml-cpp-config-version.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/yaml-cpp/yaml-cpp-config.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/yaml-cpp/yaml-cpp-targets-release.cmake" + "/usr/lib/x86_64-linux-gnu/cmake/yaml-cpp/yaml-cpp-targets.cmake" + "/usr/share/cmake-3.16/Modules/CMakeCXXCompiler.cmake.in" + "/usr/share/cmake-3.16/Modules/CMakeCXXCompilerABI.cpp" + "/usr/share/cmake-3.16/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake" + "/usr/share/cmake-3.16/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.16/Modules/CMakeCompilerIdDetection.cmake" + "/usr/share/cmake-3.16/Modules/CMakeDetermineCXXCompiler.cmake" + "/usr/share/cmake-3.16/Modules/CMakeDetermineCompileFeatures.cmake" + "/usr/share/cmake-3.16/Modules/CMakeDetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/CMakeDetermineCompilerABI.cmake" + "/usr/share/cmake-3.16/Modules/CMakeDetermineCompilerId.cmake" + "/usr/share/cmake-3.16/Modules/CMakeDetermineSystem.cmake" + "/usr/share/cmake-3.16/Modules/CMakeFindBinUtils.cmake" + "/usr/share/cmake-3.16/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.16/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.16/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeParseImplicitIncludeInfo.cmake" + "/usr/share/cmake-3.16/Modules/CMakeParseImplicitLinkInfo.cmake" + "/usr/share/cmake-3.16/Modules/CMakeSystem.cmake.in" + "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.16/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.16/Modules/CMakeTestCXXCompiler.cmake" + "/usr/share/cmake-3.16/Modules/CMakeTestCompilerCommon.cmake" + "/usr/share/cmake-3.16/Modules/CMakeUnixFindMake.cmake" + "/usr/share/cmake-3.16/Modules/CheckCXXSourceCompiles.cmake" + "/usr/share/cmake-3.16/Modules/CheckFunctionExists.c" + "/usr/share/cmake-3.16/Modules/CheckIncludeFile.cxx.in" + "/usr/share/cmake-3.16/Modules/CheckIncludeFileCXX.cmake" + "/usr/share/cmake-3.16/Modules/CheckLibraryExists.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/ADSP-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/ARMCC-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/ARMClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/AppleClang-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Borland-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Clang-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Clang-DetermineCompilerInternal.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Cray-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Embarcadero-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Fujitsu-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GHS-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GNU-FindBinUtils.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/HP-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/IAR-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Intel-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/MSVC-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/NVIDIA-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/PGI-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/PathScale-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/SCO-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/TI-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/Watcom-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/XL-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake" + "/usr/share/cmake-3.16/Modules/FindBoost.cmake" + "/usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake" + "/usr/share/cmake-3.16/Modules/FindPackageMessage.cmake" + "/usr/share/cmake-3.16/Modules/FindThreads.cmake" + "/usr/share/cmake-3.16/Modules/Internal/CMakeCheckCompilerFlag.cmake" + "/usr/share/cmake-3.16/Modules/Internal/FeatureTesting.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux-Determine-CXX.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.16/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.16/Modules/Platform/UnixPaths.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/3.16.3/CMakeSystem.cmake" + "CMakeFiles/3.16.3/CMakeCXXCompiler.cmake" + "CMakeFiles/3.16.3/CMakeCXXCompiler.cmake" + "CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx" + "CMakeFiles/CheckLibraryExists/CheckFunctionExists.cxx" + "CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "CMakeFiles/vda5050_order_demo.dir/DependInfo.cmake" + "CMakeFiles/robot_control_example.dir/DependInfo.cmake" + "CMakeFiles/mission_adapters_vda5050_source.dir/DependInfo.cmake" + "CMakeFiles/mission_adapters_goal_source.dir/DependInfo.cmake" + "CMakeFiles/mission_adapters.dir/DependInfo.cmake" + ) diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/Makefile2 b/build-standalone-codex-5j6ZZh/CMakeFiles/Makefile2 new file mode 100644 index 0000000..93db647 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/Makefile2 @@ -0,0 +1,223 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Default target executed when no arguments are given to make. +default_target: all + +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: CMakeFiles/vda5050_order_demo.dir/all +all: CMakeFiles/robot_control_example.dir/all +all: CMakeFiles/mission_adapters_vda5050_source.dir/all +all: CMakeFiles/mission_adapters_goal_source.dir/all +all: CMakeFiles/mission_adapters.dir/all + +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: + +.PHONY : preinstall + +# The main recursive "clean" target. +clean: CMakeFiles/vda5050_order_demo.dir/clean +clean: CMakeFiles/robot_control_example.dir/clean +clean: CMakeFiles/mission_adapters_vda5050_source.dir/clean +clean: CMakeFiles/mission_adapters_goal_source.dir/clean +clean: CMakeFiles/mission_adapters.dir/clean + +.PHONY : clean + +#============================================================================= +# Target rules for target CMakeFiles/vda5050_order_demo.dir + +# All Build rule for target. +CMakeFiles/vda5050_order_demo.dir/all: CMakeFiles/mission_adapters_vda5050_source.dir/all +CMakeFiles/vda5050_order_demo.dir/all: CMakeFiles/mission_adapters.dir/all + $(MAKE) -f CMakeFiles/vda5050_order_demo.dir/build.make CMakeFiles/vda5050_order_demo.dir/depend + $(MAKE) -f CMakeFiles/vda5050_order_demo.dir/build.make CMakeFiles/vda5050_order_demo.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=15,16 "Built target vda5050_order_demo" +.PHONY : CMakeFiles/vda5050_order_demo.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/vda5050_order_demo.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 12 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/vda5050_order_demo.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 0 +.PHONY : CMakeFiles/vda5050_order_demo.dir/rule + +# Convenience name for target. +vda5050_order_demo: CMakeFiles/vda5050_order_demo.dir/rule + +.PHONY : vda5050_order_demo + +# clean rule for target. +CMakeFiles/vda5050_order_demo.dir/clean: + $(MAKE) -f CMakeFiles/vda5050_order_demo.dir/build.make CMakeFiles/vda5050_order_demo.dir/clean +.PHONY : CMakeFiles/vda5050_order_demo.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/robot_control_example.dir + +# All Build rule for target. +CMakeFiles/robot_control_example.dir/all: CMakeFiles/mission_adapters.dir/all + $(MAKE) -f CMakeFiles/robot_control_example.dir/build.make CMakeFiles/robot_control_example.dir/depend + $(MAKE) -f CMakeFiles/robot_control_example.dir/build.make CMakeFiles/robot_control_example.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=13,14 "Built target robot_control_example" +.PHONY : CMakeFiles/robot_control_example.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/robot_control_example.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 10 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/robot_control_example.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 0 +.PHONY : CMakeFiles/robot_control_example.dir/rule + +# Convenience name for target. +robot_control_example: CMakeFiles/robot_control_example.dir/rule + +.PHONY : robot_control_example + +# clean rule for target. +CMakeFiles/robot_control_example.dir/clean: + $(MAKE) -f CMakeFiles/robot_control_example.dir/build.make CMakeFiles/robot_control_example.dir/clean +.PHONY : CMakeFiles/robot_control_example.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/mission_adapters_vda5050_source.dir + +# All Build rule for target. +CMakeFiles/mission_adapters_vda5050_source.dir/all: CMakeFiles/mission_adapters.dir/all + $(MAKE) -f CMakeFiles/mission_adapters_vda5050_source.dir/build.make CMakeFiles/mission_adapters_vda5050_source.dir/depend + $(MAKE) -f CMakeFiles/mission_adapters_vda5050_source.dir/build.make CMakeFiles/mission_adapters_vda5050_source.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=11,12 "Built target mission_adapters_vda5050_source" +.PHONY : CMakeFiles/mission_adapters_vda5050_source.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/mission_adapters_vda5050_source.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 10 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/mission_adapters_vda5050_source.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 0 +.PHONY : CMakeFiles/mission_adapters_vda5050_source.dir/rule + +# Convenience name for target. +mission_adapters_vda5050_source: CMakeFiles/mission_adapters_vda5050_source.dir/rule + +.PHONY : mission_adapters_vda5050_source + +# clean rule for target. +CMakeFiles/mission_adapters_vda5050_source.dir/clean: + $(MAKE) -f CMakeFiles/mission_adapters_vda5050_source.dir/build.make CMakeFiles/mission_adapters_vda5050_source.dir/clean +.PHONY : CMakeFiles/mission_adapters_vda5050_source.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/mission_adapters_goal_source.dir + +# All Build rule for target. +CMakeFiles/mission_adapters_goal_source.dir/all: CMakeFiles/mission_adapters.dir/all + $(MAKE) -f CMakeFiles/mission_adapters_goal_source.dir/build.make CMakeFiles/mission_adapters_goal_source.dir/depend + $(MAKE) -f CMakeFiles/mission_adapters_goal_source.dir/build.make CMakeFiles/mission_adapters_goal_source.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=9,10 "Built target mission_adapters_goal_source" +.PHONY : CMakeFiles/mission_adapters_goal_source.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/mission_adapters_goal_source.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 10 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/mission_adapters_goal_source.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 0 +.PHONY : CMakeFiles/mission_adapters_goal_source.dir/rule + +# Convenience name for target. +mission_adapters_goal_source: CMakeFiles/mission_adapters_goal_source.dir/rule + +.PHONY : mission_adapters_goal_source + +# clean rule for target. +CMakeFiles/mission_adapters_goal_source.dir/clean: + $(MAKE) -f CMakeFiles/mission_adapters_goal_source.dir/build.make CMakeFiles/mission_adapters_goal_source.dir/clean +.PHONY : CMakeFiles/mission_adapters_goal_source.dir/clean + +#============================================================================= +# Target rules for target CMakeFiles/mission_adapters.dir + +# All Build rule for target. +CMakeFiles/mission_adapters.dir/all: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/depend + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=1,2,3,4,5,6,7,8 "Built target mission_adapters" +.PHONY : CMakeFiles/mission_adapters.dir/all + +# Build rule for subdir invocation for target. +CMakeFiles/mission_adapters.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 8 + $(MAKE) -f CMakeFiles/Makefile2 CMakeFiles/mission_adapters.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 0 +.PHONY : CMakeFiles/mission_adapters.dir/rule + +# Convenience name for target. +mission_adapters: CMakeFiles/mission_adapters.dir/rule + +.PHONY : mission_adapters + +# clean rule for target. +CMakeFiles/mission_adapters.dir/clean: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/clean +.PHONY : CMakeFiles/mission_adapters.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/TargetDirectories.txt b/build-standalone-codex-5j6ZZh/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..ef23745 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,11 @@ +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/install/strip.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/install.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/list_install_components.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/rebuild_cache.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/edit_cache.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/install/local.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/cmake.check_cache b/build-standalone-codex-5j6ZZh/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/CXX.includecache b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/CXX.includecache new file mode 100644 index 0000000..3b20947 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/CXX.includecache @@ -0,0 +1,508 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_geometry_msgs/Point.h +- +robot_geometry_msgs/Quaternion.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_std_msgs/Header.h +- +robot_geometry_msgs/Pose.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +string +- +vector +- +memory +- +robot_protocol_msgs/ActionParameter.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +string +- +vector +- +memory +- +robot_protocol_msgs/Trajectory.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +string +- +vector +- +memory +- +robot_protocol_msgs/NodePosition.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +string +- +vector +- +memory +- +robot_protocol_msgs/Node.h +- +robot_protocol_msgs/Edge.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +string +- +vector +- +memory +- +robot_protocol_msgs/ControlPoint.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +string +- +vector +- +memory +- +robot/time.h +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +cstdio +- +cstdarg +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +atomic +- +csignal +- +string +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +yaml-cpp/yaml.h +- +robot_xmlrpcpp/XmlRpcValue.h +- +memory +- +string +- +map +- +vector +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +string +- +vector +- +map +- +yaml-cpp/yaml.h +- +filesystem +- +robot/robot.h +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +robot/init.h +- +robot/console.h +- +robot/node_handle.h +- +robot/plugin_loader_helper.h +- +robot/time.h +- +robot/timer.h +- +robot/duration.h +- +robot/wall_timer.h +- +robot/rate.h +- +robot/exception.h +- +robot/macros.h +- +robot/platform.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +iostream +- +math.h +- +stdexcept +- +climits +- +stdint.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +stdexcept +- +string +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +robot/time.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot/time.h +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +robot/macros.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +robot/platform.h +- +iostream +- +cmath +- +robot/exception.h +- +duration.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +sys/timeb.h +- +sys/time.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +robot/time.h +- +robot/duration.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +functional +- +thread +- +mutex +- +atomic +- +condition_variable +- +memory +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +robot/time.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +functional +- +thread +- +mutex +- +atomic +- +condition_variable +- +memory +- + +../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +map +- +string +- +vector +- +time.h +- + +../include/mission_adapters/adapter.h +memory +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/mission_request.h +- +mission_adapters/types.h +- + +../include/mission_adapters/event.h +atomic +- +condition_variable +- +cstdint +- +memory +- +mutex +- +queue +- +vector +- +mission_adapters/mission_request.h +- +mission_adapters/types.h +- + +../include/mission_adapters/event_processor.h +atomic +- +thread +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- +mission_adapters/event.h +- +mission_adapters/mission_manager.h +- +mission_adapters/mission_request.h +- +mission_adapters/plugin_registry.h +- + +../include/mission_adapters/mission_config.h +string +- +robot/node_handle.h +- + +../include/mission_adapters/mission_executor.h +atomic +- +memory +- +mutex +- +thread +- +mission_adapters/mission_manager.h +- +mission_adapters/navigation_client.h +- +mission_adapters/types.h +- + +../include/mission_adapters/mission_manager.h +condition_variable +- +memory +- +mutex +- +queue +- +vector +- +robot/time.h +- +mission_adapters/mission_config.h +- +mission_adapters/types.h +- + +../include/mission_adapters/mission_request.h +memory +- +string +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +../include/mission_adapters/navigation_client.h +memory +- +mission_adapters/types.h +- + +../include/mission_adapters/plugin_registry.h +functional +- +map +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/adapter.h +- + +../include/mission_adapters/types.h +cstdint +- +limits +- +memory +- +string +- +vector +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event.cpp +mission_adapters/event.h +- +utility +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event_processor.cpp +mission_adapters/event_processor.h +- +utility +- +robot/robot.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_config.cpp +mission_adapters/mission_config.h +- +cmath +- +robot/robot.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_executor.cpp +mission_adapters/mission_executor.h +- +robot/robot.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_manager.cpp +mission_adapters/mission_manager.h +- +chrono +- +robot/robot.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/plugin_registry.cpp +mission_adapters/plugin_registry.h +- +utility +- +boost/dll/import.hpp +- +boost/system/system_error.hpp +- +yaml-cpp/yaml.h +- +robot/robot.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/types.cpp +mission_adapters/types.h +- + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake new file mode 100644 index 0000000..b418514 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake @@ -0,0 +1,74 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/event.cpp.o" + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event_processor.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o" + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_config.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o" + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_executor.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o" + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_manager.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o" + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/plugin_registry.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o" + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/types.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/types.cpp.o" + ) +set(CMAKE_CXX_COMPILER_ID "GNU") + +# Preprocessor definitions for this target. +set(CMAKE_TARGET_DEFINITIONS_CXX + "BOOST_ALL_NO_LIB" + "BOOST_FILESYSTEM_DYN_LINK" + "BOOST_SYSTEM_DYN_LINK" + "mission_adapters_EXPORTS" + ) + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + "../include" + "../../../pnkx_nav_core/src/APIs/c_api/include" + "../../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/angles/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include" + "../../../pnkx_nav_core/src/Libraries/costmap_2d/include" + "../../../pnkx_nav_core/src/Libraries/data_convert/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/laser_filter/include" + "../../../pnkx_nav_core/src/Libraries/laser_geometry/include" + "../../../pnkx_nav_core/src/Libraries/robot_cpp/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include" + "../../../pnkx_nav_core/src/Libraries/robot_time/include" + "../../../pnkx_nav_core/src/Libraries/voxel_grid/include" + "../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include" + "../../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Packages/move_base/include" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/build.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/build.make new file mode 100644 index 0000000..a550efa --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/build.make @@ -0,0 +1,191 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh + +# Include any dependencies generated for this target. +include CMakeFiles/mission_adapters.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/mission_adapters.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/mission_adapters.dir/flags.make + +CMakeFiles/mission_adapters.dir/src/types.cpp.o: CMakeFiles/mission_adapters.dir/flags.make +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../src/types.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/mission_adapters.dir/src/types.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters.dir/src/types.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/types.cpp + +CMakeFiles/mission_adapters.dir/src/types.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters.dir/src/types.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/types.cpp > CMakeFiles/mission_adapters.dir/src/types.cpp.i + +CMakeFiles/mission_adapters.dir/src/types.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters.dir/src/types.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/types.cpp -o CMakeFiles/mission_adapters.dir/src/types.cpp.s + +CMakeFiles/mission_adapters.dir/src/event.cpp.o: CMakeFiles/mission_adapters.dir/flags.make +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../src/event.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/mission_adapters.dir/src/event.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters.dir/src/event.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event.cpp + +CMakeFiles/mission_adapters.dir/src/event.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters.dir/src/event.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event.cpp > CMakeFiles/mission_adapters.dir/src/event.cpp.i + +CMakeFiles/mission_adapters.dir/src/event.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters.dir/src/event.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event.cpp -o CMakeFiles/mission_adapters.dir/src/event.cpp.s + +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: CMakeFiles/mission_adapters.dir/flags.make +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../src/mission_manager.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_manager.cpp + +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_manager.cpp > CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.i + +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_manager.cpp -o CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.s + +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: CMakeFiles/mission_adapters.dir/flags.make +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../src/mission_executor.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_executor.cpp + +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_executor.cpp > CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.i + +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_executor.cpp -o CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.s + +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: CMakeFiles/mission_adapters.dir/flags.make +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../src/event_processor.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building CXX object CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event_processor.cpp + +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters.dir/src/event_processor.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event_processor.cpp > CMakeFiles/mission_adapters.dir/src/event_processor.cpp.i + +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters.dir/src/event_processor.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event_processor.cpp -o CMakeFiles/mission_adapters.dir/src/event_processor.cpp.s + +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: CMakeFiles/mission_adapters.dir/flags.make +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../src/mission_config.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building CXX object CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_config.cpp + +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters.dir/src/mission_config.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_config.cpp > CMakeFiles/mission_adapters.dir/src/mission_config.cpp.i + +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters.dir/src/mission_config.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_config.cpp -o CMakeFiles/mission_adapters.dir/src/mission_config.cpp.s + +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: CMakeFiles/mission_adapters.dir/flags.make +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../src/plugin_registry.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building CXX object CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/plugin_registry.cpp + +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/plugin_registry.cpp > CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.i + +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/plugin_registry.cpp -o CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.s + +# Object files for target mission_adapters +mission_adapters_OBJECTS = \ +"CMakeFiles/mission_adapters.dir/src/types.cpp.o" \ +"CMakeFiles/mission_adapters.dir/src/event.cpp.o" \ +"CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o" \ +"CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o" \ +"CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o" \ +"CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o" \ +"CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o" + +# External object files for target mission_adapters +mission_adapters_EXTERNAL_OBJECTS = + +libmission_adapters.so: CMakeFiles/mission_adapters.dir/src/types.cpp.o +libmission_adapters.so: CMakeFiles/mission_adapters.dir/src/event.cpp.o +libmission_adapters.so: CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o +libmission_adapters.so: CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o +libmission_adapters.so: CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o +libmission_adapters.so: CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o +libmission_adapters.so: CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o +libmission_adapters.so: CMakeFiles/mission_adapters.dir/build.make +libmission_adapters.so: /usr/lib/x86_64-linux-gnu/libboost_system.so.1.71.0 +libmission_adapters.so: /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.71.0 +libmission_adapters.so: /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.6.2 +libmission_adapters.so: CMakeFiles/mission_adapters.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Linking CXX shared library libmission_adapters.so" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/mission_adapters.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/mission_adapters.dir/build: libmission_adapters.so + +.PHONY : CMakeFiles/mission_adapters.dir/build + +CMakeFiles/mission_adapters.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/mission_adapters.dir/cmake_clean.cmake +.PHONY : CMakeFiles/mission_adapters.dir/clean + +CMakeFiles/mission_adapters.dir/depend: + cd /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/mission_adapters.dir/depend + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/cmake_clean.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/cmake_clean.cmake new file mode 100644 index 0000000..6b64d56 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/cmake_clean.cmake @@ -0,0 +1,16 @@ +file(REMOVE_RECURSE + "CMakeFiles/mission_adapters.dir/src/event.cpp.o" + "CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o" + "CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o" + "CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o" + "CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o" + "CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o" + "CMakeFiles/mission_adapters.dir/src/types.cpp.o" + "libmission_adapters.pdb" + "libmission_adapters.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/mission_adapters.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/depend.internal b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/depend.internal new file mode 100644 index 0000000..c16e5ef --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/depend.internal @@ -0,0 +1,207 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/mission_adapters.dir/src/event.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../include/mission_adapters/event.h + ../include/mission_adapters/mission_request.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event.cpp +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/adapter.h + ../include/mission_adapters/event.h + ../include/mission_adapters/event_processor.h + ../include/mission_adapters/mission_config.h + ../include/mission_adapters/mission_manager.h + ../include/mission_adapters/mission_request.h + ../include/mission_adapters/plugin_registry.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/event_processor.cpp +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/mission_config.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_config.cpp +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/mission_config.h + ../include/mission_adapters/mission_executor.h + ../include/mission_adapters/mission_manager.h + ../include/mission_adapters/navigation_client.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_executor.cpp +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/mission_config.h + ../include/mission_adapters/mission_manager.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/mission_manager.cpp +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/adapter.h + ../include/mission_adapters/mission_request.h + ../include/mission_adapters/plugin_registry.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/plugin_registry.cpp +CMakeFiles/mission_adapters.dir/src/types.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/src/types.cpp diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/depend.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/depend.make new file mode 100644 index 0000000..c803d9c --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/depend.make @@ -0,0 +1,207 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../include/mission_adapters/event.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../include/mission_adapters/mission_request.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/mission_adapters.dir/src/event.cpp.o: ../src/event.cpp + +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../include/mission_adapters/adapter.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../include/mission_adapters/event.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../include/mission_adapters/event_processor.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../include/mission_adapters/mission_config.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../include/mission_adapters/mission_manager.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../include/mission_adapters/mission_request.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../include/mission_adapters/plugin_registry.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o: ../src/event_processor.cpp + +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../include/mission_adapters/mission_config.h +CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o: ../src/mission_config.cpp + +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../include/mission_adapters/mission_config.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../include/mission_adapters/mission_executor.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../include/mission_adapters/mission_manager.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../include/mission_adapters/navigation_client.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o: ../src/mission_executor.cpp + +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../include/mission_adapters/mission_config.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../include/mission_adapters/mission_manager.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o: ../src/mission_manager.cpp + +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../include/mission_adapters/adapter.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../include/mission_adapters/mission_request.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../include/mission_adapters/plugin_registry.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o: ../src/plugin_registry.cpp + +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/mission_adapters.dir/src/types.cpp.o: ../src/types.cpp + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/flags.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/flags.make new file mode 100644 index 0000000..a057de1 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile CXX with /usr/bin/c++ +CXX_FLAGS = -fPIC -Wall -Wextra -std=c++17 + +CXX_DEFINES = -DBOOST_ALL_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_SYSTEM_DYN_LINK -Dmission_adapters_EXPORTS + +CXX_INCLUDES = -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/APIs/c_api/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/angles/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/costmap_2d/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/data_convert/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_filter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_geometry/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_cpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_time/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/voxel_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/xmlrpcpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Packages/move_base/include + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/link.txt b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/link.txt new file mode 100644 index 0000000..1f85fe3 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -shared -Wl,-soname,libmission_adapters.so -o libmission_adapters.so CMakeFiles/mission_adapters.dir/src/types.cpp.o CMakeFiles/mission_adapters.dir/src/event.cpp.o CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o -L/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib -L/usr/local/lib -Wl,-rpath,/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh:/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib:/usr/local/lib: -lrobot_cpp -lrobot_time -lrobot_xmlrpcpp /usr/lib/x86_64-linux-gnu/libboost_system.so.1.71.0 /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.71.0 -ldl /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.6.2 -lpthread diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/progress.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/progress.make new file mode 100644 index 0000000..5b29368 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/progress.make @@ -0,0 +1,9 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 +CMAKE_PROGRESS_3 = 3 +CMAKE_PROGRESS_4 = 4 +CMAKE_PROGRESS_5 = 5 +CMAKE_PROGRESS_6 = 6 +CMAKE_PROGRESS_7 = 7 +CMAKE_PROGRESS_8 = 8 + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/event.cpp.o b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/event.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..89c7bf709af9ceb6bf313df5b16d1867cd56a80e GIT binary patch literal 106976 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
6#zG{`hbEOlcA4 zHWLhM&T3X2N{cw(31J9CoJ|(|b_@PJ3x1~szsrJuKZL`y3x3q@;WRyWN&wFl`BiO> zxFgOFLULv*dJjKKP(+-2#hs2`uIN47Pk(=i9&?)Oc({5_BdUnn&Ct*CD@Ff+3#xI) zrGL=HIr49a6+`Xved-ay(BVokZ z5~BaTqW5sFKf_?0$N_r3=TOU0Gu)7@h_f|>Y5FHDc((=LX2G8c;ggk}k2*z^;ei1V6vBVrM?;x7P-Mx5PY5Ri!Th6V4j;BQ&*w=MWP7QEMj z|HXpuvEYBT;O|-Rzgh4PEco9o_=gs}--7?kf`4Seao5rC6>;{3K|msEH_~uY#EHmm z#3hJ0gDv>M7979j311QCFbjUT1s`U?^DOvL7W`-nevAb_&VrAy;3rt{krw=93!ZPm zM_KR!3qIO{pK8HRv*3jme2fLh(KCESoUs=CEDK(2!N*(hQVTxOf|ptFb1e8|3x1vj z|Fi|4V!_Y1;L|MlbPGPif>&7ZnHGGu1)pQVD=j$An!;DanPnu3#HXObp&J7lPtp&f)g5wUw;Va_cQ$zTQIQT_W_=-5V zlX3WpIA62ixWjSyia1}l;2SOYEf)MX3;t~jzR7~$ZozRU)Hf3n9@SiK37V$;uKNL=j+XA1c{6!0%0{^VSX@OASD;0j6 zKy>tn3Rf$YzO^h49nV_X!mte3ru1 zTMJ*>mlb}o55t>R6uu~gAAKl7@eqEF!dpUkwZcCi!oQ<%wc_eadr{$+`!KxG-xXXF z!e^@{bX^EXAmVg~+MULYFwnzdhT($eN&|}WRig=|!SiMaLm=X=ruma2?rK^PSB2~c zl^j(#23$GMfQS1TB#Q9I3jvOZ6Ygg;eYl^|c(|X@c(|X@c(|X@xOzi?QQsAD!u<~t zMBJ~hedK^2;|J(2qQ8U=rA3@@e}zO5{pGfSKHOhvdbwKcu|=E{y&DmWxL=415TX$$ z+`l13#8GdY{KN|XLd&v=}+`AF6h%-gpdC`b7)w>a~h;zQU z^P&-Fns*~&5hp6{ylBLk?%jx3#F-)PylBJ;kMEcoaVk6_5sNq%h&wMDab|iqA{KGN z^8rkbII{(n7mYX1hCsxbYr(55_&f_f--0i&;GePJ z3oZC(EqHhyg@h6P<#&iD;{L+NpA>N}^#gPlaW1pq;rSR6Mx1I3eT@ZQY{6?Sc%21L zSnwqle5nOrX2I(%_~$J6atq#I!5b}jlLc?K;Nkf&5=NZxd|2bH7CCJeJZZt(EqHjo zjf4>=Jm1!Mheggx3x0(KS6|15(jv~P5Qad+xzd7PWx=nu;Hxe8H5U9@3%aa z&!gCEh2Q1k$5L#*!XI*Ro{264+@u%3IWG|3rSKETHx>SvD~D&&4=MadF3vONXBGaq zi=RTVQw~S@zj1M%c`s6Un0|}Gx4QIf&)+S0$q^|3374Mr-fY4972fUAv;4`!P)-c>B`fWbl@1*dHfRD<3B8P6> z?|r_fjKW`a@dAon4mh|dbbZHyKVZSX1O}Mo zJgM~l(v^Q1#on^ugNLL2zjEoh-kxf~qkyA7`-tOp3a?W1Z@F?#rr6U8f8NEfqF5i` zCi}-8gZ8jgIJ=bS8x`K;%3=Hwg}>n9H57XlaI`ZoR|EW8+Jm5jDscYl(od(@=?edw zi?jVr3je^xx!!J8_g{*&D=2o8!o&T{a|-{LOV924j1y4K8!lc(u~vnDl4{-E%%pT~?uIo@|cTu&A$Jlwy1S>fLIJZ$G~ zg&*$fW&a;}63Ra;gvS)_egDJd_>jU6ap@ZLitf3EO<5jXwD8tw{5p_~GjK1vifD%|@{396a8o>sW`-O<^E z4~B+Q;QWW~Jo(EN?tPEM_I#*t?|UTHTMZp`f#ZFTbQ(!~K;aSBPOi6qRQMPd|2EOb zMx&f?z5Rm1&v5DI6aAwK_r7xjx2x+Tg^zXV880{$<%j9(74CiS#4AmYE8P3uDM|7V zg$x!r;rcvH;p1Js7ZLpz74Cfp#U=Ef!Y8`)Um*G@EEyL#WiGym@Kp*w$Hiw8{$qtt zcJZ4DKe!O(oaf@l5I#fU-gi)^6MnP8r?~W25xz^|Y_;QXy*d&GjsnN~4r(RQzo>BU zdnd+k0YwE)g)1M1U3L9Q;WJ&F+v7MG$O@dXf}DDKZ6QTPJao)VHDfr?!qzMJCucDlmD^`TMW3tc(vhX)jXv5WKg z_!osQa`DGW?^YlvaJ=uM*w1Y+@D(_VU3$ic6(R0@2lYD1X;HZM9TYTAbv>tW?>i{& z2abnl` zUWHE&;nT;XoN&Ebr|>qHp3CcDg?ryqokw=QukaNv{YJviEk*eqE`Af?U4Wa$g>PB# zdoB1+l>Bgg?pOE~u3pH#x~9W`Sm3O3arVy!g?ry?v7et+xc9vu`{92S?tRC_?dZ&j zD1WspAG$AfbtwE=7w7)u2MYJT<6?V`goak&T;|d)W7nP`>y580(#-@UOXk;Cy{U;oDitk=c4>@`A!Gij{5V;kUTB`n@BhjReL5=QbDTeAOyE?6*w{|F%m%gXH%rJe;r7pd*5H zCzqb<)g=nQ-Nm_{cPjjQE)LU3b?sF6oi1KU_(9Mi6o~KE7@w~2AGq`v5&b%a-|ONd z2>%V>CO^Mx!QWSMyzkst&e@+vd+vATbAB5Y?tSOhM0y`q_-2=$@!WEh<9+AGa>^9` zuuBi!g1W9$_@gdFg7LPAYE`zh0>*6)F$@&$Ec*}}tNl_S0 zwgQ8h9up)>V|y~u5pQU&U0zu{p@pPtFsW!uJnY9HNGwJ`4p)wHLdp4Nst29>08nKG=H> zp6jg)NI_k)yb{j)uF}VSTZm^BpS`@IX+=##ecf!WwW1D5O=gruS0tK}Q`_6dw=}mz z=U!M9pP-Ov^un3*8&*W)wGGh~n1iZhaanD1Q(ZkeGrppxwZ3L?L!$KZn)+l#MuLl7 z$x3cCx?(QKEN*YAhcn4l`BhXUC#Y%|ofij{rBJ+Zu6eS)HjZwrhx}Xtcj!Z?adnBd zWNSOL6u2+Ksx)KPoT*c00ZaShctt#c*&0{d(n7XFO>bLP)0(J@w3I#hU;T-Db=jGc%pn;lD(0h^85+WIaNhizEGtm0CRf+iX+rK zs1^c=It?UG$V4J^XJ2zv-b%@R#YX;2O4cW4V5M;Wgo>)tI5ZS$22@Zf%96@Y zvFAOLT-muZ$gG_?m1=So%&eNgTP2N&#^%G+!QXTiKROG{zIHt<9}!+Rl@&iTW9U7>Z#c ztw!MZ;`Svlb-yCf2zjnbj&H1Qs%V5FpBJwx!GF|lEWPExJL733Zikm$e>1JvWjydk zd9sZ|aH{M^MUDo*>}j^-YQG02Vc*B5!pnux1sUWats66vL3V_PhtLGqt%mTB3Xj0W z#lVJ*y7GuM$Z<@qII5}mC<=NALB zJJ1>ZpR)dDz@Lflg_!j2SH%1I)Zmt2#*-~Bx&c3^xYc}MQ|y{5D5(k5wPtL!;u^2G z!j5&H_e)#a+m=PW=Y40|XU4TAmW+c%o{o-q3#?EyH^CEka%Fr)5%ulHrx_?2df=%_ zmNqu8NL0*CF-Fh9b%cqnFu1}37pP0LCYov!IB6(Nu53w&ia9Wk>0Hf$30*3iy>d0J zX%rVVH7Dzrz~JAMz#(LQ)8+NB;4nAQ*4~(K)S3i5_th?29$!*Z-++3;Zl(uOubEm& zurcb2Z6o3S*qUzbHr&E49ETT(koHClJcCwt@7gv{-p z4!C(rd}{MD>AgHF(-u`G;toKGWuPW?!TCL7ar}O35!C|+OT8p*9rkhJuU4w%_&Crp z_WTlm$C0se7&LepAX9sJrh$(#SuQS4f=*^>A{n38;w^J!t$#dp?^!cVSe#f|-;^~Q zEE3MvFOiy8#_MX5HMr~&S~!GabXN$g&W^(hm%GxDrH9;}lP1X-R-+PFSIeNCot^DN zg37*{h1bA)$)!y=4ILi`7o1(+luRsbt!aQUrU_oZ!5fjqvlbUe)v8{GM&nzWNjT$# z@d=im#B|&;zi|g1RrBy|G7PzG%}c!ZDwXq8L8P1}c?(@QewkItDsG&?$mK5-V|(cd zL#0iJHZtRe8km}8+E^#S3){FitCKytr5hah@R&gjobs`a&Fb0T9sCY>-b&jpuYot; zRj!8YmKnWnHp?m9+0g%xYPV0ZWNyF5FVBS;RFnPIb^vP2e%s(H)v9FT^O?K@S`7WW zVGw}j`l9$e=+vroCC_FGP>M_DYH+GbHr8ii1a>;1amY2Hcmlk5pkj2 zvmF3n;^aQcWjEFjoYS3Es8^6|KG)%$*FmHe~p|6P~xcc|ub&e0CD8 z#21F{x?I)*vEkPx=w)Cc-Uz*ql87%>)WDTpaquIzsoL15sP3!=x(290{OFSLpjC_$ zKJ^U_O`qa5?H!p+p$3*o*U4Cz@G*|=I`zD5ZuZtssD;PjR%({e+Vq?i7X0AF9;{%( z{N3(3_~2nKy!6W6VWI3AZ<_@D24vqK*JcAFlU^z26 zDba-Aqs8l&R4i{sLUZSiD#3s5%HFINlCP-#nw0acS> zHRn~Im4UE|s!7o2!xWHH^;8-4sHA9g0(@lG4$i05>$$*CbpbjroPi8RwEx0<7zd*a zY9!2ss_>05j8y8S@j%BKU%MAmE$-Vh?ZmOqbw481eeM9eTQ z`WqABlhEYI?r^tOa{t)OF0-2rNd~iFs$3z>Zv6OMT57iq zk_@&%Wz*jTWwFen)^Xq~w>J0=KN-jMGgH-qy683qRSWUw26fE?n)ZPFRBJ?4$+MR< zw_c7P#oF6t6ec|It-0w{FjjN@E*SePB*}J0GszvqaZW??ES}ilT#Mg9W00=)(Ov>>b$}rOCeyHTOJjxlaKK$9 z$Z!Id{?(0IpfrfhWLlJ=bgV2{j&CkKK32HTwJ8T@m&)*zo`Ji0`Y-@nalzX6)HuKy zjOsFK;g?3qger9TKntHX)x_0;dK|t~tz8D6J0Q}UP#+D_9rQAsDu3;h%}1`@<9OE1 zJ1~X7k+E1$AqFtPQID~f_ZF!qB=|x%_|Yqj^QlHbUVFAT`j3y>=e0_hlwjq_a3(|3 z7(IPa56HOooz*mq=P&7-vU zV?^aJRszGAdJ}}5y*Gqqvk+MZFYLWXG5IBML!t?Od8oexuAEt`huw_F#u8kN!4D)_ z;fpTyn2^+OeFoY);aKZ-b81lHrG%_%9DUZ`*r*>p2UG-ZU!QtJ@H(@BSm-LTOm$MV zfM^+eN9qa<_+Ee9&eK0U?dN!NW7kv3m(Rg z+U6Em9Y~QY7=oktS_x}gm0C=O{EbI8)qSc5sO3|oejrc1s@EQCFE|tIFM>npUVNF^&T7Umg zQh^;rDqdAq#rPIb6c+v_$diJPbXaEbngNP~J}VBta?Um@J|k)dmJ?6)<*m5ro}$)* z7u7l%yAno!qZ0;Vh<<+a#3>p0=?P3$Cbq(Aesd#ijZh08hQ#@Yeeq7ByaUHnJ0Q|CD?;o)|u`;fo?;M8Y?hXMEe;uZFuNX>uSm1s< zm*qOnNBi_uMfe~H?||Jm81ED~?ta4f27%ut@J#~8)4Z5|v%v2b_{##9^gRN{T~t`k z9|eAoz{?xKMF1rFOfsS9OXBkY82 z_l!8f4v?z;jqeYq2#8jvUa|cJgrodwp*IuyxS;1fg@W>V-!sH<4<*(M+exVl@!{~F zao)!X@goEd+ZCz{?ZjQoO!R02el7|W4*aW^r>KO^Me?q-ZjzkNgCQV#B}#q`qtM+7eI$6dFWUfM6^NPBQsFQ$iW zLe+)&dRpLIZxR2Zz)#fVs&D8N_$YxtD{xu9I|QBy{Vy!^&k0=0|CPX{d>j3*1-&fa z=PmdP0*CES)rJ1~jlgAjy(Dnn{|)J17WgtPM)~sQKkO3p+|Qui z*91Oa=#_Ft30%$-q@Q0Ga%6qpEpXU|QC+C_cLEDa9h4)zp+QqOZ=|_m*xAO1^=7CVY^6mq2E3bxa{}#3Opg`-xs*F z=N}p1usx=_P_Lw)ZNcjVj&pdf4=V*O>%(Y)_Y3+Wf&WwBlLapOnVA-Rfx!PII`1!e@QR<;bFqg>55v@OI-R5_bKK2Ci~kX1#W8>(w|2Odf5+1 z|Cb1Rju!N?{YrY?uNCt!-8_*9!1L ze3X!nYcF^qF6R%pW`!5x1%e)*W$;4$6oJ1eaM|DDTpcf@m*swfLNzY!l;i%XLcScY zPZPN82R^ zxb&y2S7(X*<_mh+Z_D{Wk)S_G(7!A6%KR1!dafq`sdcAP;-4zylnDANfsYsXa)Fl$ zT-GaT{{}%X$Ek+}F8dSNzGS(aBj_gxy>fh)^U{k2z0LpfJ;EeGFXxA{T~8Ex#|wHn zPm}gc67+IDAm?dU3ON#AD{$GrtrNJ+m$XNgi<~#gez;D^k@dD-;IbcX7r5+)R|{O) zDckiq!Vj|kPZoH-kaM2E}MoCN6?QFaw-Kb^-4S{=r0oV`y*$rkdrUuOFN}K z(hu_aSNcJ=-zp(rJ_kvBiqI=@IUk-UPp^c}~^7dWQnYcgkyzITGS|I3U1$>C zZ(SI``TW+70M6&PZVcdjPAh+JfU;39+uAMYdF)1$dIZkT2#9kdM>+fs2;qEc{D_w! zKv%iIc@B(8)dJ_aH{z=W&T|;VHwk<)0(5l?oS#83sYl@aEU8$iGeSFgZ3OW{1djfR zA_!NZz{?e)|HK47Mc~T>K2_jr1%AH3?-uwpfj=a0w1=O!pA$Id;cY6XcLmP2qqw2e z$s+A^1n4?b;4>J6aF)Ph0&fsF+k(kA37p3o#P1XMOa$n9PT)Kz#H4ox&d(Hx52e8X z?Y|HKy3Q2%90nnrCGbjtHwc{H)nf8Z0-r1B?-O{Hz@HO1uN7eOy8@pt=!epvh4%9^ z8YZ79aDJzW_$+}hM1ZdO0>}EmK1vFl*PM}MgTVP&74b&|&T|07UlKS!gCM?F;Flsm z*YHDi1oL$ngAkSqJTCBg0kQs6@m*Eg82c7dNM z@D&1|CGg7y-XQP}f!`$Xl>)y{;8zIzQGui1xa?mN_!k8IUV*O?_Pa>)dJrr@M{FVMc~&8e3!u22)tk5*9m+CO|sGc>jhpW z@EZiaP~cw__$q;~75Hre?-ck}f!`?b-2(3tI3E^>cCzm=IX_PmA-+yW)!%Y~e@WnV z0{^nWuM_xsf!`tUuL%5pfsX^6d7cyaR|Wmc0!R8yl(tvkUla7hkJLAqFJ3!Eq*UNH zYZCQ$p1{8@@T9=MA@B_X-ze}$1pZBdza;Qm1in|`w+ejtQThh$zfIt!0{@o4=L!7V z0#6G3I|APz@J#}LMBujz{3U^ZSKxaE{yl*YKU&|Q{dWkwRN!|Ce4fDX5_pHezc28O z0>4|}TLk_Cf$tLdJp%6+_`L!jF(-WgLV3!E46B??{r)INS@@8MnBt%~8NO{4G~@ zXClEl5+n_n;pZ(G9FOE@f!{TIJeD(&*f^j3R3{@bgFYWgE5y8FY+P%z<1-=iV^jld z@Ovme##R32#&G^B+arFqm*QMi6Lq@NReh#OH6`%VJU&B;k8h3p4qElI!rmsnlcdb4 z-p;w;PF;(zMyU#9I!21KWI9YrYY@dV4v$W2@D~#PU<~}7?N0NlHxyT!Gz2p^fbHzf zaxCU%unWoovpNG^dY>}C6T$~H1kd*{eZBgW~pq2S$|I@*RE% zK5l7kEjE@!OA>x<2wVRJ164Uvk}4j(+BHN#(gNbEj;CN_tndE ze_r0V&)pb4Xiv5h_itcu&y)$8k+ECoC>w4t_^85p%+x2ABXtIBlG^u=_CU(=#2e0r zw=r5~hajmv%hKa3hiObsxrL!|w9ID+@d2&xk@kvlF z9?-7gp$;`;ON!H+o8p!~OnV1Z0pN%P!wfd-Z2-Mpx$*cr-fw(A@~t)<=QG~uOclWiZxcFt`QhtYLp;q6a#y|EiN~e64+;J*wgGmylfU zxH5ehVtRL@_WhP$TIVHorHEXTnx>p7v^!{2rkO;AhbWs&YwngL7Z18V#N?At=8*s7!SC8Ov~9!l$rsw%qYL z+uF+$k@Q13zQqhJ$);>q89X@QH#NRjY<91v=vQRVYC0XouOgc_VsejpzmzP-$rPue z1Z8I3xJ?J7goF;HKT~I=aDfl(3COhaXz628wY|`}CjR^lsKx}EAs&m7L0(f?Y0m8a zpFQHwY!husFdX9b(>?=qOUA*^A38eXEs55)=BAp4`sB*^iXvxRZF6H|q6vOn0tc}t#?82J z{@Au89GFA*OPkuq!B=p=lw{$FW$`7gHI4AG_0rbn_7?qvmi_$uXo=&{Ps4nY%IR(h zg+I&D=Lyiy;~frd{4wIApPxF&kLNNlABQ&nc?SOLvf!^Kerf;pS@172@Z{;81r#xy!v1Ol|1Y!PZ!qvbmj!e}{n|`&8D;p-n&T1&WvKfAG8) z=Ht-D-$VSe{@j@bf3HD5?or5kIkf4=y$XZ&zW@O9acJXLKQab-ng18F;2(-VQieq>N%MAR#0fEfNp^YE+ z;>1hZ|6CUOaW6@{r2k%md)CXLO+W4#h?nHY^K+PwLmPjcfgjJ=VLlFR{4EClceCJM zW#E4q^22&LwCP`K;D03x{tX8HSF_;XWZ=j1G1zVnZT8=1;Kx3V`8c%kZy|nJ|8PHR z=Ht-D-)+#3`&cs{hc^D_4ElFv!T*v$Kc0ugdO5V|?=kS>IY`XMp^g7tgZ;a+;NNS| zkLN0}UJh;god{GmxMcgq^Ou;9LmU5413#YA#C#mu_(vG{@jNHy`yI;qw+r&a zd>q>N&m{elAJ2heJ`QdCr3U-|m<4~iK|h`+!+JTi>F0edrTu@-g1^#W|6j7;Uu3W! z&wXOMIkeedXV8!5LopwRHvSd^|7%&4Kkt7j>;LOn@bf;Qk{|aiXS+GH*}uVHKhDXR zk3$>(CWHTfn}z*%8}#FORjijooBl@({QX(*cN_TeoGaGLp-umD27Wx>iupLS@$WM5 z<9S!i$Dxh?ZQ_^h5BK|LJ`QdCyw9qvKX^_J^Koe7?>E?w=T|Wwhc^B}L?G?Q^JRGemrM^`8c%kml^nR zO^x|DwDC_f@DIvDKc6=&{r9^p^e;5%$McZbZVqks*BSWn+zIC6(8k|l;C~|v`&SwG z@fka&Pz8UjzXyd=lVE>s}@ZVwJ z$Md&XFNZe$_ZjRj%7TB3fgjK3V!a&N^gm15pG)UBOhF;y3aC+KV$wf^J^+*Y zzXx)H`th3%lm2O>|2&}^qe1=qEd19JKW#hiN?+^1c(rU54e3+&f%Y+nS zUgfpk!rw^z>Du2z#2@TGHW7cGR0i>&{r3UCssAV>{}mBG`frQiXTSd3V*h5+e@Z|< zko&G@Sbrd4p`rX92Tr!1^%p_LP4(v`(x0yWoB{l%`qN_2kKZ&0^>xj=zqtee*_hLy8Qp%qJNV?f44#Z1aO|o|7E0q4)Dk;P|Qvd@SFU_`hNczhzIq5*P?&Wk(x1`|G#C?-$DAh zo@4&E8}$FxqJK2$5B5L7{P$Y)uQ%x5VbDJj=GR#MLAmotKlT~&0(HJ?Ht`3?pP@%- zvdetbVLdV6N15dT1MW81k5l?!`F+8n|8u1Olr;KRSoC)r^#97B|1OLEFOmMM(&)e4 zqJJ0ZuO@!1KhGQVzhTiol+G)vNu&QYi~chFSQ9Q;f3Zmi{XY~Q+_3%x%fE^Ak3%8i z3KX+*Fz}noztW%|p`iXsi~ie4f3eVw(V+gB7X8Z%`tke8p#G~Y`hQLO3)1LcY01im!;8v81S3)?=a}c?-zplFR|#~kfHts7XAGO{cjlb-*3_XT!#L?+oHelCG9xr z{~m+>eHQ&g=p3$-wHWtru>AjJ(Z7)N%l_jngZ?>CAg1y^jr6A*e=h)jQ~9?T^uKM; zzsaJ1I_clw=3GaD`M=eoe=X@>PyE<_zhlt;>Z4{-(de67X6c{;-&3>Ec!Pa{P!<|{_|m-+SLDl zgY>8K-%l+3_he}QW593nUys55{}}8)^Ki5M2OX~+pRW8q3H&Dgd9P~z4jriH*L?>4 z-?HdmP5Q?YKL^43gX`2L{cA}-xl!rQfr5hJMqP~eSoA-Tq5j`m^lvigj~Mh9z&fX? z{_H0G>H43OfZvq=Ee8FA4f?As`ajB0|0NdvI}Q2|Ht7GMMgPbXbU8Ipd2tXd|NAZa zdr7~XKOADv|Di?yTGF5H`Rjd){-RylVyr%0Fh%kMC-N z^*?FR|1Rkd_FqB&KWE|pU*b&kT5%$c{*!>;RDTLz*Nn3MoNUlvYterT>8EbM zwIbMmeAmMN2=PO*@4~#wtK?{N{XUqJln@}C5LQ~uW)@_(8k|GgIdx03$T0{IV?-;`s__CH1Z-%i6n z8Td{1Zz20f5I^?6V+{5`XwhFy6R-IJ{lWTkk467Z(qAp~pJC9y*P{P1(w}br_nt+6 z(Qmb4ng6i{{ihyl_WvuS_<}U~&j)^!|6>OIXBqTgW6__VuN5cL=wD^gUrqX}i66_q z*r5Mai~bGyn(-py=O9@Arygha-#f&g4?5))PU=>Mlh|Fxul5%F^n)W6rFzn}EW@xRQV|6Hix0EfoE zH%R|%R!kw%%4;IPvu{Vk-wgZR<^lMVV` zwdmhQ`k{O9T|xZ?$D954D)FE0GZy`;Nq@TW_p}qt{`)HNuVlk11QUGMDBw5wui9Y$G=u$r zwdgVs+kX=Ar?dYe;5XUdZLoia!TvEYPez{v-@ksH^uzSRcLn`78u(56 z^WW5Lvi?;V^j~Aqe-G(j;L{#%zpE_z%SgZMzh)Zr|Hh)7P0 zoadYDKfO@%m!;AFltq89LH}HX{``~8`WKV_Po&X*BJi8?KjQbAQP$si2K{p_`mZ7V zB?0~DD|yYf=r1zp$8TMS5Hs6#pGE(}q(5Ez{k}zi%%FdvL4UtR|FfijoXjl5L4@!6 zz@op}p#Nfn{!c>zqs(CY`8(-<+@~$9{~X{qm4656?;w6`zl#j|kIOgfe{hUuOxOQ6 zTlk+M{&fBS=YZd2e;?Ujt<6yVPuyVtnWN11pF0eKbSpIbe{i`hcH=UswgWr#V2;X(NMSuAp zG#R&Z)W5`_ALrR9Gg$whCjIHkZz33I;(wX=KjpJl(@Llq_)Y#>NcPL|quyZuZ5I7U zovF1vFO@+&H*o(Ai~hBwe;3iC|CSr{|HGpHEz(~d&==JIH;ex2w>2a4qy9#N{5x zzk4kD`waTq4Em3Rc_zT2_R~xH&r6g4ODz1S(ZIJc4gUh*9|Sbzfr1_KN6jevpA`oC zAGGLyg7n{%MnBH8P5L()^miEa9}4qilm9L_ODj${{}~MYCjEu)Xnt9LuQ2Gp%%Xo4 z=@0gQ0XI88vhaV2_|vt&A6o1$H`srr!Tvsr{vVS5VQI>563p{W{@+IYAl`Qc^Ir=5 zCjT!q*uUCf|9Xr5Uecd#{i4gFzr~>cT7&*)E&7k5fhSo0=qq_mfO(?Hf1@+x|FVUD zBJt0X${-%}|Bb+J^8Z@Oe~kEX{J6o8|MxBWuO%wFdoVFi$o4 z?`~qOO_Trez;DXG^C!(H+drN^FofhWev?K2&|*y(eEtaf|BDv=BS^o@Kkg|W)c<>n z{&PtGk~I0>ZP6byiL=}*^xG+Fo`wD=Eo$*UgtP32c@u>UIt`=7Gt ze}nX=tG`<<`a2Bzzh=;X6wGr?{u@LCS33V)V&OlU_$NzeK|JWc1;B6e-+Dv+`?|sY z2Q2#MkpB8K`hQ^2-%a{s#E<>YMuYx;Tl8-s{i6d7E^zDo!=iskuU6bG^xtC8KNIHZ z0EgypyGu1=u>B*gyru)c$^Sb@Kld}3|Jw}uzh%*X=mf20hExXeVE#8+^!Jc{>HlvV z^zX6gzlii770@5d{~0jPMJ)LISWEoD`FD{2G~hS+ukg=WvGgDA|38H6VZ6?w|60-y z%R{~^s6TGeUvAKk`$q)zKW5RtiS$?cw1?a8Ll*rDNxv+=I}Q3jwCL~4Q2+ZD{hJK> zzi-e#6&eWoG+6%S6LrQf3gkane?JBMrtLI1|CcTLze@VKp0F7~{lB&F-;*K# zX)sSU<$oLTr)xh;E&MMLe-j%{A?lLXV&FIVujntDs)LBJ|9QaRzbzL1Q)%Hpo&JX{ z`tLUA$1_QS?dNcqAYq<@^=C8bPv^f2E&SVvpPGT|GSnrn3g9>SFMp4w;`)RBd)Q$A zH!b=l%qWe^YQf78N$c$sEQXaDOK`^yaWKW4DM4CYB_Q_%lYNq=zu9khQu@SFTs zY0$sLp#Ncu{yRzkiZuRvz@mSdLI2|h{hxw)#u1<+63~-BNdsJ8IhpS{ECYU(eMFAAK4LbWDY5^s~AO)*s;CXwd(JLH`w`AF7e>DkA+bJ@8#^FEr1@pZ_0C MwH5LwuOR>b0R`axbpQYW literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..6272d7557dfdb43f54fdd5246b4827f89d59e2d3 GIT binary patch literal 430288 zcmeF43w)Pz`}ptg)@q0*VHCa{u+sTJ5tbU?vN9b=O0Blqw6@uy14UVAW(*+;A>^FL zDTGOgr-u+inDeq8LfAv}zpm@PKA-z@-=F*1#?SMAPVU!h-|PCmuj~GtPxt4(zxOUk zOFuC#5{Y;Ch&abN5%tB88^39$zon9v>db9^UUT$4BhI07#<4sTr+@}v781n7yhQhUmpB@3xD6iAI6mf@@)8<0e|`McMzofVE9AZIq)525y)cJ zOIVhIoXPqukh58z1M*zf&jUG^^?5AMXSo36g{+r>T*&%GATMV95|E2nF9&%k>lGj` zW4#jO<*Z);vI_pLnlLs&ib7oSF(N=$h%p;2jso1-v{!3)*k@5iuDIU{)P32Kt9a+BOo7T{V|ZMS$`bl z6RbZ8at-TGv3wfjGptvGe3tdKAfID>9mwZde*xr+tgi?866-I6{447lK>m&OS3thX z`bLnivHm*9H(1{U@=ey?0{J%Un?b(A`nw?CV|@$A_gVjd<%b|^SpNv*$E<$>@>AA7 z1Nk}YUx2J-eJjf^S=O=K2J-K$e+BYu*0;0#hUE^B-?RP$$RAm+2l)@ye**b4>pNNg z0`gbZcd>M^KXIRm0~ybHGnNS;o3q{mWFqUkf!v+-Jy^B`xhLy;fo#Qk63D$-Zw+!E z*4u#Gm-YQX?$3HM$OBkEkY!tt?N~pAWt3%mkR4d>$g&g2Ls>rznDOdiS-!Bp{x&Mc{0m%mcv1gVEq)986Zz(eI(0KEJuSJ!}@6~PX{@c z^)o<@WBp8!<5`~o@+{UTf}F&9Cdy;ocXZ;G6RUofq{VI@Gv%VPQHLPC?@;cU+u)H4R4XiH( zxs3H2LEgmr%^;VvehbK3S-%bB3f6B2c?auvvRn!BF4pe`c@OLNg1nFQ`$0ay`YM(W zg8U2X4}pA`^+!NH%KBq0SA%?<^(R<9333hVPqBO&SgM60twIH8keI3Z>S$~1$ ziy+st{u0ZVLH?EX4Iux<`YSA7Ww{aLYplNx@(tEEfqawow?Mwl`eu;tu>LN{_gLS; z@_mpWu>K*)8rDAo`7!ICfc%v8&p>|8`WGN;S>FosOV;Z^Ze#uLAirY$YmnPn{|4l@ ztbYe`2kYOn`~l>Ttk;A52kSq9{F(KgAb(-~SCG3{cVMX)!9Q4w#es}xy&1>^)|-QD z!FnRd-B{n9!c+ zV*Ox{hp-+6*`DnR{Rv)+Z}5iGlc?8bU`kUd!M39=XKy;=5Q z*%xF#){g{v6zly#4q*LgmdCIh2=Z9gj{|u;>!~0Iv3>%`!K@Dfna28wEKdR%V|^&g zVIWUtJ)PxnmLou(!g>bCQ&}I$aumqXtd9YC8tbQn9LxF{Ajh$OCd=_4C$N4N%ZVT- zv7QNXGV4=7X0e_Paw_Z7K<2QX3-WB%r?bpsIRj)q>jf+eS)RkP2xKwqB_K;#p9yjn z>$5@5Vf|c|=dqm2avsR@S-*hge2@!RzYt^@>kC0%#QMb`FJXNV$a2;%1zExRWh^T} zUe5XzAgfrvlI2w(uV#HQ%WFVh%ldU7m#}_4$QxK+3UV3iH-fy0^_xL1XZ;qIw}QNl z^%Wp*XZ;S4ce1{cFjkPor`Fvv$(f0X58AXl^g zILIehe-h*x)}LbeG{|RIuLk)n>uW(i$ND;!&x3q{^%p^|XZp17PLRK_{wv5`tUC!XuizifEg<7rZw4}f_2w*FuuKHG8|%A++=KO&AopZ_FP5!X zCV||W_0}NwVZ9B=eOcd+<^C*_K_0;Rfh^mCY{&XRAP;8!5Rg&U+k@=DdPk6*SU(ix zVXPm{G6iI3*1Lc_g7vN}yRqyJvIpxuS@r_ioAo{*`?B5-*GM4$@+MZ6IeeB8$60oWXiN%L0&vte*q2i1lKSC9IdSoC$Ik>$5@5Vf|c?=dnH)opH?n>c$eUST&hi$Jx3Yd4$Q7*L&hieBce1_`kqMfnB^lNA7%Y9kgHjL9OM(MKgn_p$fsC;8ssyqSF?PU zfucR;?&`g<(5fPA0z4_JQ4vIgWwtbfe%6Of;>{u#*6S^olLE$drZehIRU^=%;k z&iYp@zXrLT^>09a%ldaLcYyq!^&dd~$a+1Qfb0r?-Qce~ zvmPLOvfc}1Z`S*O?8|yTkVnGbQSjHF*#MA7vwjT7fvg`3@;KIy2bs$HAdn}pJ{aT> z*3&?q$ofejW2_GaIgIs_S*C*=&iV+Dr?8&E@>Gx`Ssw**H0xtPp2qs=EXRU8gY|JB z&t!c($O){U1#%+mlUQbgoXq+ZmRTUPS)U4W8tXYAb6GzdfoQyCswvC8Y`byA1g229xESH8>>hI z{l!{32la|Ez^kg^JDDoLrMzmr`kJs2HPb&~Gmxj@PvfeWo-<-gqS%75*x_)PaI%@! zR5*KmR;;4gp(zwYT79o-NZ0xpMXM6Bu)1`fN1vu*@Y1+mxsgkG+D27GAvDwSY6WErba1`iY?f-go@{>oL#$inZ;EL#Z`GxAy6;;i_j@pfFS#KM$}!Ne zD=8E-P#YYyYa^9*$??7up`3#8y&DUO@=1(*>!;8iytq;*uC(PUI~BvdxFC|{kSVO4 zDxJ#mi)LfCeJE`{Bp3c%lUE`Ot6MGH0C8%IDvq=z5Wo@@rkkfG64%y)mXL(G^y- z7h4jm+?P;f<8ixc@QhexMlwhk^mP8W;v7PZiw7s7ijmN{J(s18y40O#2BC62H4L5_ z1_y@0!^2=}tA|&aa~F=u$d17catZ zRHPh2*5zC>on8f@2f(c2fXceHZmfUs)cXOa4{?nRHpzx2X>!}Oh*OZ`1 znr%L$I=IQ`^3wgIq$Dx|d`Sf79~}Ar(xo7=fdaVEk%u(8}WR}h|%49!95q)R7tCUF%5S% zor<*WlzProxk`}(ms8hN`_Ff;b=`G0T;FCSLRhd&PECvrSX+WG$-YpzhS37&g%Q3ZOg4p}t%Pq^hZO2Q`In%NWW@MKX&FNlPP@Fxn zxFmB%VRn}5$e(8n8lE1_$}P&CQj$9}yEr5T0B5@&K|R+LVenO#(zTabTr)S<64GS4n3iZYCr6cj}B;GAryD7!E_vm~2O((%Av z=b)1sj<#f0fsVG=3&(dJMUUW)MW)Y+}yC^!fpfo=#Ix8nPFFRU1B{M%i zH-B2RBy$?%DnBbP+ws)stlW~EXnsMoxOD2&+}TbxoL4Xvb1^xyBzFd#lwVNdhN!GF zG7I695I8ljV3utu&OWC!JAX>HVWE=exU@NNwu1?WSTc)?bEoA)t>l&D7D9#~@x@TQ z(UKgc6HY*zg6#O&ur{okAg`6V!=jCP=Lo=|V$YcYYcQ`kY%=|ggDFyi@&@Q@0 zyX59i$t%r*vhG5Oq)fsGHkd~0CMSD#G{1DlWN5Fs`7G=h- z@}t>Mm4(?}P==|bV0w1GichtNtb!@jVxzhFS-Dd(OQ3b;=3{$+cBvap+9@Z7P%pXO z8Tyox%*oKUvh$;P1qIWwWlg1!v!D>5%@pKoN2*Y$Weq0h6-=2P1;3&>nqgy_p6&k* zB~Y5}PAv7HtxL_27F!Q^qv~We|<`-udm7oU{rt1NH5#lPzot&55t)!qEWCu!r zMrO&B94Me^MFpjW*fY%h>Be*pOpApgGP-tp z(U0dZjvflF-99ffE3?p@?TUP76lIr`7D3y`Hc<+#YDO;1Akefhq^zQX!a|G+JI}0~ z0+>%=qMMTQTf#3aD#$9O9;btLXVGk!OJRhXRsfT6KJ*fpjDJtOVWptsgu*rRgV}&G zE6t8Vug=S!S`sbIFDWR+_HNZnHr5l)?rK6QnNvs;C-)~w1nXC&PuDJ1I8|_X2zs^e zUO5ET|G2D-y+~)m%2fOEqLQqxuR;PqDUiXglm{-pn&C7>IE zYKhna%c>Jqqk<;rT``+J+~`F69}$MvurW>0{`p>no5r4j@2Tp018LGe)YHnUgJJmN zXef{R8XS79*JC-@DE0iZwGf={%sNKAu~oJfVh);8`7B7JHW@>}DA;M}kIzHEcvEeT z19+1kpNa5_XMK$KOBAZaryk%AvllR(QJE2i`yw07dq(utE$1rmF>ciuw@J*{g7@gr zR<^D`+$Y(!E3*4>$rTZ2MFjRaR7?A(WTWT*w`}NqsC^%**M?dOjpaYP z6MHc=5r+tnNi36DMo~60KZ$LgQw9LRoc+(SdNhnQeZ5Vg5=iKexi> zui~<#uk?^Xlb(PIgb8uzI2)@!v_pTwzum_U|7*ng0{awv+b`A!esvcqxUf0=Chv;4 zzb80Lo4b~M(?MPmNr0cQuZtvXjll23UBjNofgGJM%cC#7nMm^3N@enEauBmsU?{}C5U7~3r^As@@oJ$LE8 zk(Rv^(jqwtGxP)3VBs+LxHFP)zgKFA1E|+g5YWg3_?_a61o$!KqDTV#)N^Gd0e-Z- zC6WL?E#C=+8RsmEOSmJ>`4H0$VI-cIFx<(u^)_k1rY5`*aUPB&e1lccQ75G#TjJ3P zgPd`0coe?*-PyJDfJmz|63&e*j_iI@#94(|SB2N0ZC50z44rR^B-|cx)}jiDKcFMX z^n_O<&dh{IBhIyvgc~DHEgKV0NEk{F-GgIGw`k4)KRU6Odm{Y2Wo82W{^rU^0{lYg z%D4ph4by{h3Gge$U*i(qi-(_(CcrO1zi;NAWCqw!5lA+PTg8OcVicRHV|!?*40lBi z#;hHe@KFSQps+pyPyasKhul2`^k*%Vkwq6t=#be6f2L?m5#!ZTb{z+ArW zeI>XORri-N$O_+GiM8skVxa}-@`pxXv?NH?yv=y`Y*VX8(>8(oW_aAVeo@-j^RvH> zhIs=Y_ zW#V>&*0{6^qx7CfRgdrL+~|vBC{!va2;G58<>KaW;`X{`c)Gc>pjsYabiAm#q!qeQ zWO^Z}LpQw}>I)cxXIH1=avD|<^PqT3H=4!bUKPOFo{I&au1)(wf31M$mn(5K-(51W>)%Q2p?gCs@0rUT7}`ZjbV$R75Px zy%7!Bx#PKgUyTlUDr|PqP*)o^0~i6B<>M>A3LXg|5uMk@$~VTIt&hhCE2)zuSUaZJ zcE&smI5f#Lh`}qVO7B7YKtnUOF$^c`@xrooW6hDsSNl4Re{5Z0T|;$L!em9$ zl-I#%XE$sgSC6s{wE=uQ$F&WCd#`_B0@i}<-A}|s|qrmP;b6=%e zMkFB#Y%;q(#=K#kNso1ywvai~w@~N_XKywe;XkuK*f}wXnNrvjg(rQy2fpD~0kGQ+ zw-$!0A}XtfvZ3OEg5C8x;j-$M;b-mdodtE_oh6Q1#-iT8J*#Tl*UEpJH#ZA0ZqKeG za_DTsw^Npleh$sXsCXTs)h~jpBey-kNTP-tcqkrQv(e{Z z#Tr2LRW*NDKQ%mBs+teGhT&@$9hUpuT~kA6HBtfVRUU2|%V&}Rs|8DmfE;s3%~{cUAorraw_81P|CE#CteaO zA6{jR#DHmbHxdHBhN{H*-$U+iGFL%nAuyfUD$Klnv1XPqv}vAoaKyze5Tn`ZbSfWX zoO?0V-Gj&S*>In8b^y7UK{f=IZyzYC}YId8PTOOXf&n{Gvh{44&$hM)d$_x z9q@*huXE#ZzowUeOn0E%>p;9Fi=H`XycY?Em(oyp#@P@qte(bV4}pB}`08C`V&K2) z>NI$zsAozwx~sUMghDtj6A-;#E3mhpA&v|8WIPVdK)rkA%d2z}nSr>D!+=ncLS zbNhoad0@>!vq1l2(l!^v52f)NwiR&F(_^eGtv<2t9SBNSY9OTGDx@;)N2ont7`RPc zL9c=M(U`hnVFF)yc*5B2<%fGg%jNi2(SBn02;f}}QJzMlNZygMW7Krr;X^X_lPfavW3K>fXx%*yv5strM z5k?zq-!S5MjoS=fjh}8SYrxa%zwS~GTDqE`&7=Uvx@&CNgq>Ko@+PMtthf7ms9O`p zSYTLnK??D1=UXdD@H`dNMQeNJQ0X+nhoUq~J*sE)au^C4Tfv7X#F`v@ad0l6t(f(V z)EXyzEyB({5wq$bi11cqX6Pp-1*fDc%(Oj7>w5nm%eSh6 zXJ)I50<$HC^bssRuNmOAuy!M!OeJx(io+%gk#XPRzo9SWmYcS4e*kIul#{c ze}1I+I|vH~Q=CoUudF%_^!4zDrfQ5F7QySGva5|j(Om;T3^cK>b_Zm<4dAT_D#pOq zI0z4{*knM!#B&4$|5`21f3e6$h-5QGSlQ-zh{pkavy0*K7}|Noa5O_OdbXmk?l8WY zx&glu3cav2@T{^gVSY2xficrG3IWkJID8-5-z*92S*j$yiIu+=D}R}8Ea|x#-mDVu zrX-^$HgMzSSytTytYf2IFgh3#FAS+qfwACtDdq%E~Al>;T=LLjN`J#!8o zblRXX?mBuBWMB!DaTTni7s1x#d~Hl7Jp=U(eCi`Eji?AMT_8Z;X^>pE13#ez+X}OR} z&#S|rraC!}H7O7TG!*;MBz%g99ttxiNqh$*KBDBI^5?2t$HK$G<~GG7f3`)K;>{NWK?lIuB&;n$do~t4y4g|FbjLGyZ^Ijs{Np{% zCEkUnx}E8*fQ)g!Y4d4ADQfJhX}15WiB=8##w~Bx8cPGZEqS6_tFMTtK+TiQ@^;I{i?^Y&YD(<|)>Yp621aHW=WyQ%W+z-dX83Lp zST*@OR%BSn(9Fy|1b_2ua4lt}09To6jSc%Q)?D1!>}FKLpQY@LAHf##$Ca{OgU}wh z1_z{VZ*?6$SIV<6t|M`?vw{B9;E1JrA2vE@)53He5`0rn@byXRHvGhh5ml4IGTPy9 zDk11C_!K{Ew!)4uiiR@drPhuE!fANL(onw)T%DxVxEFx5OZZY_-8ubuNQH` zg*}Rq(1SCY(MWmC_c`TYzE;z%&Fr`FW(B6*0k5ILV$ajdxb@So?j-_$y+q9)N!arTPtwqEQI57Pp?w zi+=aFG462Y8{w=+Dxe9$PbhVGdf?Y2q~)2TsvgHN_1rQ|JC3?3Dv2;ZZpH{<>?O4ck0hG+1AM6ndCHi6+371ob)Ehjeu)9I!GF#(zSPnhUL};nQ<8XTYhNlF z4Z@lv!WO^&@x8%zT=w+x9<_V?bm5=v*c*g={TWs`?j;&L{sF5V+1vBazm|bnP35*S_lC zH_>HqJbaB%Gr}8-Myi7yyRqjcz5HSOq`bkN1YO<2SA2%i$O;aXG%4YT|3ca>NC7{V zO~bst&+1E$+w#Lp&7bmyJl)FirS>=Mu(>7WF57-foO118Wo?h;R*!`Xz?l2)d$?M_ zs_@eI-&z-D393=8;pY(i&B&`~YMuL1?f4(7=6?|9Ye={xa+_$AZkAiO@*tY^^iV$i zd=YQ5>1$5dksAot7J$^!o}SM4zIwmQGQAe0)vkw2yt?}!=-Rqtu&3x#XbQ#%btE)1 zxIWg?2XJ*@K761TK5mC}pQ$>S%1Nh?Q@S9np3<<{td)kxD%10Sz5cNO{;TVc(%`E< zZs=0C;iX-}cd!E8#k&XMbt-%BM71uuY_9Pda}(Yn;r%aK+7&hTqPdZU>~{H|y$`0R z=G#_D4)(2YTkVY!zr*tZE+B;nj>YJbib~CQ;FFBxJ0PeKX{QJ&uq_*fxeIq}p_p_J zMISJwvMJRt)pg*W%RX?L8Y;X|!+O5Q9qDkjhoP!7-0wOBbIu5s0A5qo7|FowRKUAo zA))22kaw7CT0NQ(L(fI70M880S%yDIwKa=zSv$ma8UCEZxo*yb+q5a+29;}Xw}dxb zF<88tt9CDvVSIgd6y4RX)?X{}$5o^M?D-BU&UFkgX zcbzr*&N(uNQ8U00^M7Q2rlk#*#~;_9n|{|Mta}FgV4`Yp#$H>XZRv?L(C4^bbqN0s zeXy*$kh^E0zkA{!H@^y6KcpJRIi(X{VsO@pFE=>r#8(5bnY+DK>7@Ib0>%!Gla zYC8wJNNE&Vy%CwxV+nZEgmSuIEvf#%Fth#1!_BPHV+pC=d8B&hZN;h39H!hjLI*0} zzwq{tVZNcjZ^Ft64bB)Wf@kPa!*AeVk{dXkH8#J-0?b}z4I4RWrUvH86(*te6 zivq93ac-wL{+ahUdqO1ew1NNsN8zskpjno~jzlHg&HJ}`@2E8!H*}xIDqVThy60~9 z_;b|y{iBvyhJTJ)f8eO4F9Os)Px$RDoJ+jjRh(u1rT3_eJBai?g-Esg3~lh{q1Q`; zEA9W*yN8WeqgoQ1*MyCoCEqQ??GAX-`(vmE_xdMr*H&HK;626vU-w?!#_HAmzfEhE znyJwV{nvy4Ev?jSYuF-iW%|E*Ulq49|JC>9C=I^*at)6FX8oC-fB0Q)V~#Q7q35e{ zZ$#hFGE?+l)1n6ajyv`6ih$(0RnVj0{+|C%I}g3)t=16aE9U>xFVMWYv+wn(O|9Q^ z_Z1r}jTnE}-I|blk9c=9$~P%s4A$+;E!fZ-r)-+UXHBxss-5qezMOBE>TR>pEQ8`uX~gm0$U4=o zkz@X@GfLn2T(je=wu`}qn163;SJQFWWpa&*$bF9(TtV}8E&ZMyiWMH=hev8&H7|91 zD-nDW&FqpY547(7ckF-kUJxi>+E4QK5bzoR>%}JY8g5HNZW7ufX_0q!*q^ zRt+wOg$OSk8Rze- z(;p}oU(%UMuba_>64u9m+!#5V1N7B8dwhKSagYpOiA`Q zg+%@49e#fcMe=WZ80F*6#i8$O3N49{0>`>}ItrOpC&0-1&pAew^zJipRN=%a1*Q2V z*;x|{ONu7u<`?E=PRSlRqSt_;g2@FX6Q^Yt%*ZY&nlo`m@wDPzy)z1mvqzO=&L{-` zp`$W~&P+>712L-4#I*Dg113(KmR~w?%Iw*_dQVI*m@<80VL@K*lsRd=)6#xN7Mhg4 z!lHtbf++=gl)fWRDay(&`lAvyVpPeIB{@aenOVJhO@vIBWKYbUQJ6P$#Hfk=Cl1Y@ zSuj1jXy~YtekG-adD%mU4Ik0#$QilC#kmFf6Em|i3rn(#ihK1+rAK;5+`m^7^nJy)`s;n3*?5UEdXgRA2b2Yn5mtUw_uuA5&krW`>tS zh0SvzHDX+tDQn}aWaVkp{68TadkzkXH?+l34q(3b%0LYY-c)b)ac=2QatSrmU${qM z{@fQ-sXj);dfwc9F_!6Lyg3TH7t}~hrG~$!1im+1V|I>o`h|X@28F<{Nfp)`WNOT_ zOGuNDVpoX|sdl4L*j`>@-B(+~;HXj*NT{5^kmMN2Xi}?bl7FDg)zc9bPFYO^Uo_mF zY7*ZX48M!#w|>B5b7i%WSY$oydDOLV9pGwyI9&A(1wZ)j9dGa2*vJakNL*-Ep@oJY zFh38#`FTd>^z4bnIhjSUCMwCC7VaEE;rw0`hnJRQ&z{(nsof6Yq``xaj;4&649mCD z=z#8hyZ7wYtCYU=I=^?%?mhc<@7>wubZ#^FOoBgrm+?s>#yD|~Q;jSh{_tqy3MX>z zNGCEoDbluOi^M9JJlX-rKRoc(gp;;c(#3Iu_iTO&IKWr54MYyd!T6!~oRB(HTFKeUfKih8&LL@k7~XdiFKQ;mF1hWse(A4($MKK@P`$_@V5>z4Lb> zhhrc7Q1)S-y&X>Ca2$dkgE;@=Jo`YlA86Xm{Ii|PPn|!?JAW?QseF_@+p{lgB>pvQ zA7aLTfp`9vM(jJ;zBit)@*nfgZwHM956YjipX%8MvONWzlzpOSAJ6s^O#2+qK9}uM z`&h>I)6MhaMo<7)ziZeYHSMQ+;csDkH`AWw*>|$NqiHwlw;gv9s(+Qg)4cNsvRyiV zd?V-2W&0^+{BbAh{4Hz5zJ~4R`OYuW=Od1sn~_dEyTwxc+E(@NPVfc)@OT{la7@s3 zm{t}acaNJ-^hrk>91ZzleWX($++RY-;X~a5`eysd(ZKjGzPNx0>yPLD%+ky>!&D zT^a+N7I>oLNash{E}fss_VY0imA<%Ao&HH|534UMhn0|jJn$EVtY#34L;x)gC8nwap}4~d$N6w&t9nQ8Eo%i+NZkt!te{(-rcktbAA=u!}<-L zzp4RyC$QIZK9_^;D_|Q{Ob0)mpSa27fcZ(>0}bJGR}^># z_v2GR_vI(fT`-|f3H!u?KE|4?kmJb#A1@v5q6yPc#rCi@7v^^}$MF&9zI0&yzTxIK z3N{B9>2NfZmYp1zw7zQB(hXxQ3e^VU+zS9q>p-@rns!JBu0YT}p6!@!eg2tVoy=uB zZJ?>}-L6Js`!cq-HP0XEoxg_d(tN*#?NV9qWP58f{Gnd>?e;{2<4E>_Y`*}VRQluG z3lz#f+oirfw-Ng?wuiNS41Y}{_AP9e(!Z1Ksb>0T8TsD}4GrXZKKoWF+cQu%CY#J;nU_}jI@gu~p7A1Z%F`3z*cn18lQ>6_b#eHq*H z%=qJ`Pz6!_v%QyT&++PSOC$E3Y?s3YO}jCEwWAAT$2rQh=X>cN$aX3I z@eSCc5awLAk2J$S>9Y8;W^pHAEace?`Fos*TEP^Gs-|< z&EuvcO{F7+ea4w#xIVOFg5jjIPp;{MX*I_DLiP#k6Bx#7?vtm2?wj9up2c?mFo!`x zwHssH-o$pP-gmIQJ%pv(?O3l~+t7xPJnr>nyEN~NX1g@6matu#R~NHA)l8q!E+1xl zFVk-H`%P?@`qhp`>}_~c(05G)@#9qumVaNiOXWYB?b0=93EQRgEpEjAFx#c{ZDPBW zz8!22OCPRPRKLb+0ACx#wtSM;P6pD#C49|@Ijh+oh3hG8r+yiqgjbIk#;5Gl+YG}Phnvv`sk~3yiS7N&^YgrN z7{Yd`ytCLY^|ytM#J{2edlb^Nj_tm&3G0g2lIWAfZN3ZWzOv5r^3igCFv21A>#mL1 z)7dVSLmu0EU?ghXGOi6TV|&=xi1m0c+okz%1KTl=I(#F4+t^OcLB(&Zw_7ITiH;-H zQ&+Z2`Acu){5-aY^!04__K!l>&MWieQg!WB7PJ0YWM!j8V)CH9F0Oa z&A4A2g*yD{xQsQ7ySX2@&M)xN8a)tCl*hPKw)aLSl^0`dnZ$OfEatOanyZ(y{V+59 z310fD*-qVC#ZM~|$BDu@HEf?|o{w$n3@?mkbb-nDvs4)1gT;jP*@^AaxGIuVN$abj=SFnAcnTKLG{kZm4{d#t=y_|e`d}XuC63Uv#XQ{bhJBJlkUKmz??jKDF zYak{bjyD4E^+;;Ih$z9{xb)vtd9-Iqq}Yg@g(HkZSZ(z&b=`x>@OWxa*%l-)o& zv9IrByHwUg4gx1Q8Y=75_O6eVhe>Rg%6dNAr8F*Yz>Z~I%V}(^tZN%dXCh@l?)NEd zm&UCa+ogFtrxE)iwoCnbWh3#gXZt{`4prAYM`B&qvK`k#+HS0a5~&f%YrYh=)9|6f zH^!|P+mA5AcW*DyxR%q%`HLE{uVlMa{_7jD*RoxzpG0g-a2$;vDu2ek_Y}5E^J0wc z(zu($c4@7!i0x88S;_We&GZ@f&DXPCs-If6OXZh%C2g4&-*}cO@o>yo1O1=vQu~UrJ#3!_%O|Ii@E5V2lBv>XT<5H0dszKq z)85YgyDnnSx$*D2*NnKnPv(A53VJj6({(wtGXAn=WeI$HfyS(McmfC5aj1kH#B13#`gXYmToV`UPnusyy0HIY3B`J zjK3?}rT&o4c4-XDYru}(@?q}dQ$hEYDYi+zKM@7n7WSJQ^y5tpOzUQj>vYg{UX5ob z>)AfmXZP;yCwE1I+?M;Zy&pQMwruPPk7c_wAIxUER2NIwF4e_qwo7%fne9?t)Hh(q zx=7`|(pX*OuwO%UkwrJ&97n2)g>0AVVg=i!ysl%rR2QGJU8;*_WN;jEQ*~)PC)W*)Hav?PC7fF6N)@V*Yz#!Wy{$!}i|jq|$Hf@eX0T zbZwQ@!1>tM?&ZF?26SuOyWiU{xR=8@-b{zF@3DdHQa-mekPfVemc1}w`F?*_wuhAi z=A(rBS!4Mq;c%pUEM~j3)_<7o)T~u~7|%6qVmnQ#%5JPBcd$JbGpp>z9$p*DpySXq zqwK~#n7(XpZJs~WtEbUy-`BMBeI_iYW!xWM0o|%^_fcnBzb)f%`k3M11Bmb)!}*lM z*%21b=dK^FLt1kCKPTv?*1X0uD@hcY*d# z?yA@>)!iz#r<&m#b+?i2Qr&H5yHs~ceKBCik?L+N_n`~H$ErKydVDO0L(!==WYpbq z4rf7}9Zr049916H-Fo(GO5JVXIIqJDs5s*;r?9Z>x3OKSyOuP7!hH+h`J?ptUD+;` zU3vp{%!}&Rhcsb*UCn(o2Iu+8nb+5tpEVrcFkgBH>GW=CAU$~g&Iat5-XYxo8cQ$w z7B}R zXI$52v0WOI7P4Kcs}*byOFx#i>emgGHP-ny4o51-mb3tKoUvv;jOU%ZvRx{tbhcA8 zsvM2$%RIJA`MiwnVfn=L-^+Gs{Myif9m}Z=xA}(3DGGiA*{`8C*`GE#&>;W5sXyDNqm!y@~l`Xy`^^Uro^t-G1+V*c4qRjtxzT(cz)#Ed!4IQ&rdICsMo+hTvVOX(lW zb}9X{*)FAT3EQRmS`GrJM{ z61Mj?({EgJt!6t7?W%r^`&pYCI3LG?D7XJLpf@w)z`Z8pnk#x78s*<$r?Oqj=OngE z>737YTJETP7|*gUZzTL`woBzy(@6a8kITcK_lQEiqjZr5_q4GPRQj-tjItiWKKqzH z#+pB?5&J^6OJmszwoBIp>)4)Z#&28`e9Crd{%uAl%6omC*uJkBzHvR5$9<`Ja9xY# zR8Pwk2iJ&;*{>;U`6V3ZL^IAf_aTFJz*e*U5Yx`jAfSCS+od|GXM0$gN8$YBLGS^G zZ?4At(3AQ6{sZ=r;uz2NusAS{bJ;G{>oT^dVnU3zr=GQ0!*=Y?+HO2+zlH769J`b4 zVf7k?AlsdQ0XxoV_+iA)m&0_8p2|Mbnraf;r8LZMz>aNZJ@?atY$fMY8BHA6*}Bla)jKF7LL zG`f2+K0jkWrkdlD+FuRZrFE#2=Efnl&nVlac|MixQXikhcB!uBv%NhgLzRQEx4oS0 zQu?adE~T%A?faSG8^0ZLPIU7xr7y~MX`PnJc4?h9iS5!lZ9dz_ndvjunakNOt<$R6 zE|p&m+okexXdsaHzN2iH%0HFuQ+(-nZ!%+Fnbb)5^V#0pJl|O7EoZy5eyVQZ{7w*N zBDep?L2qWpfqjkN@qy_~#6c5|f%u`?q4E4w3frZ*F2;7LALOw8Ff)8(PkIsCQ%yUh zQO$KL*^YVA=`-fK^=y~wsg~_wa~+1+ll#fppj+kSzEX(RFk{)TDQlSVLousYx99@m-08B?ZYt`mHxOP zdf#d;+i4l1?6ckVBDTq8jfB63?KGXK^P$bC->Ge3`_;bqFV*qyWcyT~-EEW@f4h^> z0Iz<+4;8+VzJY8P^UroEeRJ6^rEeMArSz>~dq*>U#!$@Zm~Nmal6k_@VUYPgOQ7Jd{? z8OZii%=2+vb+_PYeLRVMq&&`NyEHB?Z^T~BcBzfkuw7~c&InAryw;1dT{=Itk@F|9 zeFjFN%h-Lm0LyrOBjGP^z#fJ3tJ!`4=sNriw+$nbjzxRoIRDMAFnhc+CN7+xF7UAe zKSSW-1b(K#CkT9^z%vCtMc`Qi&$f633MS%sJdq2kH^?}n+^Em8E#8@Cg@Z#+oWT!d zUlj39j^$rW{vM|}i_eL7axMRB$lv2MMrr@EE&u1p-{b!DPq+N*$lv2bIBXR0&J4@H zEfidw!TtUPmVX-fM;wpSnuOzsch0f=-FS;Ep2y*+^RfQ$xRiN<`xWAHkCn`u2lxi& zEdm_B#ycfeye=;l_$-0X5%_rmpJ(xHluoZds(iWWIp6Yk`2`mLnZoh7YUiE7GvZtj zr@kxchJ$yr?IYeP6Zk~}zeM2W0}^`O5lqvei{&Lw>`NS{N;0v<&PzX z<(U-lzni)0=PH~H%%cJS9n4b#ynVbIelR^lnfDL)moiTc@Ee)O0{nUAw3h-lmCmo2 zj}7?m1sxIdJ1M~XFwY6_QOpYid^Yph0lt*^`~ZKJ`Jw>-f_YVd?+yb4rgKSvAHjTi zfM+mY8Q>+%R|WWW%vT5a6U?gv{C(!@13Ur)6{d4zfOlrTIlxb3UK8NcnAZk)8T0J{ zehc&Z0DplwB#Mqiwr^ve7~rj7K&AE{;C+}U2lxc$(Ey*%JSD*IVBRypUuNDvz_&3^ z4e%t$2&OX@;C+~91o-L9#|HRZ=92>aX688o{w(vt0RMz+Ym%GQhuNzAC^mu6XA<7`5yp-nm}jHwaw4Dc2uX zymOP~-(q(xACIg29>QFGSMn(4NgTA|!d~TKP2!+ z1pb)79~bzO0)I;2PYb+S;A;iGPT(&He7(S57C5dd?IYfKMc^9+{<^?73H&XAZx;Bw z0#|Q3_vazr`9SdhP~aa4{1btHCh#u=zE$8~3cOC>+XViVz_$zh8-af-aJo7l9uk@NNR{A@E)T?<4Sj z0zXRN0|b7Iz>gI;zO~*y;+<514-)tZ0v{sq69pa<_%MN=Ebw%J4;T0;0?!cmNP&+M z_-KKjCh*e*eulu$6!-*zPZW5jz$XhlOW;!lo+I$H1wLKiGX!2B@N)!SEO6XCvyXUZ zmcZu-{9J*bC-8X!zd+y%1b(5w%LKkq;1>&gk-#q%c!j_#1%8FVs|0?Pz!wYrT7fSS z`1Jx`D)1WxezU-D5%_Hazg^&W3Vfx&?-uyI0>5A2s|5a_z#kI$BLaU+;Hw4xgutH^ z_)`LZTHw_JUn}r+0)Ii^FADr6fxj&94FZ2f;I9gNqrhJm_$GnBCGgDxe^=mJ1pdCj zKNR>!0{=wdp9%a6fo~OfoxuMt@UI2_jljPX`1b<;LE!ZQ|4HCG1^%nR-AB}dGc8=- z!QCADh`^x_7U$S3B0wy+X#GLf$uNy0|b7cz}pG@V1Y*k z-a+6U1>Q;EhY37I;9UfMguuHByt}}A3cR<#@$RR6#5;Wjex$(r3;bw-A0zOA0zXdR zsRBPi;6ns{qQFlQ_)vil6L`A7hYNg!z%v9sQs8(O+dkkqD}kRb@G}H{rohJw{49Y_ z6nLhjjQar`Sil zbECj-7Wgd!zg6HX1b&CWR|@M@E-*JqrmG0{*%CW3j9}r)4zSU23)vK zgs1831FjPV-dx}<1fD2xe5%ks;vMy$m;JVQXD`9OmB7`1c@2isTJUcp@cjh7zrd3P zexShH3j82}A0qJf0`DmBLj``gz*7X?Md0c`WCzQ?o8aGF;5`N2OW=J3-cR6134DOS zj~4hqfgdaI;{`rQ;DZI8Ch(I4K2+et1g`#*d9WTw2>$r=uYJTjrwV+Oz{d#ubb*f* z_&9-&7x-BMpCs_f0-qxAY=KV`c#go&7I>b(^95cY@N)!SEbvl+&lLDd~TKP2#n1^$S@9~1cF0)JBAYXttZ zz^euRtiaa_{5gTI6Zi`Pe^KBs3H+}D|C_*H75Hlce?#D#1pb!5Hw*k7fxjp4Edu{Q z;2#RSM&KU{{1btHCh#u=zE$8~3VfTuzY_S@0{=$f-wAw&z<&^Uy}*AG_)dZUBJf=T z$6sC9N4yg+@MZ!}5O{NeCklLbfwvU+UII@N_}&62P=OyV@Dzb}vG`EgC60D&JP@M8sjyub$ue6YaN1b&jhhYI{;fu{?6gupWdeyYGn34DyePZ#)DfsYgT zc!8fK@JRyC6!;W@X9;|&z;gtCw!rfQK11LI7N5iYw4VDZy^n+YYP?fu`MdqJNZ_Rc zpDFNJ7GDPG!I2<%tRhYyKGQlvd-)iCd6Re>i}xZ|dYhEbmQS4Cw&vrn5#Qg(@XNlf z@G}`de8=&`%~EvDxx~%4Ww`uW;s^P{z%OqRr? zpF+H&#fyk{vUnNsLoI$A@xv_s9Pz^~{x$J#7H_>bB6?$$&vr6#d`pS{SVX*!AHuf{ z#ObYdK3hwAkq^C%&BsR(KibFe%k{+hWy^+j195&yufg9Tew;yE^&iBKw|MJ)5Dl{U z$;3~v__f3bTYL-g5f<-HP5%^&FD0H~@eRaJwfHZ@PqX-V>Ox~JzLxkI7XOJjy)DpZ z>rGwmEFZ%!*~BMW{9fXdEdDw1Y>OX2U3aR*k0qXO@haj47XO-fp~a7;A>bT~UrfBj z;x7^}wRi^_GGG{UuSWLhT0_-A4dE}i(g3m z7K?vK{5FdpNJI7ti{DB7PKzHCMRbqFFC>1S#h)R*%Hp3Bf7Igr+9P_*;^z~8!s34; z{*=WtX=-`K;yZ~yYw->=<*c=MCUNyEbkDq)_)8vO?RDa>TKoW-x;9#T3h_5B{wVRc zEdC|&%@)t0DexVOzf1f*i)Yf*_`b!jCH{fMKOz31#ZRZHw8r9Z692^F<5CcPYVkLS ze{S*2&WO~n^gZ*9#J75YwQq=jY4N-+i0Ul<4e_rm-u(zf-&)-LpNl&zekb|=Xz}gD zf3o;FT@n3k@o$O$V)6Oz(j*czY#<)7_zB(7vzf(TCZ1sNkv-7Ag~h)hzPrVb?uq_; zSo|^K`&fJ@@irFk(F?;l(Bkun<6F-B#{-v{IEX7Mq^yIcG^;yo<>Ch>k2Pw0!`A8B#-|6v_v@mtAXy@dzQb&oHI53>CC z?}zpiEPgie!4`j*_z;W#gZRl7PdyUDPq+AW#80vKFT_V#e8^E4&S;A-C4RcaBmL2T zoW=VQKhxrs#3xz&S>l-%KVSfcKh@${#AjH1De-)Zze2pg;ya0-WAVd|#(0Y@eh%?- zEq({_^DO>0@wpaHI0nN%-{L)pmsz}+_(F?6L|nZc3Bz=cjl|0>|F#3sj&Bk4ACrk+ zVR83=Kd84XdFN~;|0^y3e#fHERTiI1e3`{>A%2_1-zC1n;zu5b;oolYa^iPb{B7d* zS={~qAop8*&hZ%jgBJgY_#+nICl&o4v-n8jPgwj`;!j#UZV&|HJZM0~5oI}E|_ zzqEKB@$W6ZlK2l6Z;^)K{AlqB#Op17KkJTL}J%0^d#Gy9;~|fx}C)LXLQ6&k%~`xtG9O z2|P*Qdkeg^!1ob&8-edD@cjh7zrd3Pet^Ia6nI;K)8>I?i+2vP7=n0rlfbgYJBL`z z^^Xd?y}&yNyraN73H(rjA13g_1)d`C&H|^4Jj(|6`z(ea-l2;y%LexWE#~^uMU`cX zcmGpE2&apo5Kb32A)GEgLO5MCgm7Byhj3b?hj3bShj3b4hj3aHhj3c7hHzSJhHzR8 zhHzTMg>YJYg>YI-g>YINh4561A&3vz_jdUSf2|QciQw2Uv;5h=%75Lc#pDyq`fzJ?lzQ79v zUMTQ$1YRWYVu6z}Vu4>G@I?YI7x<+DuMqfU0mzRp7S?e1*Vo7x*0lzf<5V1%8*n?-uwy0>4+_ z_X+%dfj=PdRRVud;C~VLLjr$T;ExFWQGq`u@YMo;T;NX#{7HeY5%^OAe_G(r2)tV0 z&kB64z@HQNI)Ohg@D~LBqQKV+{3U_EEbzYye1pLMCh%7T{;I$?3j8&Jzb^1M1ine& zZwmY^fxj*A%>sW%;O`3jJ%Mi#`1=C?K;Rz=yhh+33H)P$e1iwY zw-fk50zX*b_+RerBi@M$yuH9X2)v`fI|=+yfgdLD!v&rqaQnF(x175O{znMhe$K}Y z$9~So<@R$vF7F|P-&5ed1m0WVeFWZD;P&%HZaVGfi(Gz`5RUzPk?TJ|@IPAM#|V6& zz>gL9aRNVH;Hd&1B=8diK3L#G1fC}F69s;fz+(a*D)3(PE*%jLs`a7GCH z6oF?5{8WLD6!<8C+s}!)=^rEbpC<6r1wK~bX9#?pz|R!;c!5t4_*nv5mcX+GK2_k;1fC=CT!Ei0@aY226Zi~)=L@_*;DrJ|N8m*QFBW)-z)J-_Q{b}% zK3m{(1b(i-&lC7ufzK28`2xQ{;PVB(K;Rb&yiDK=1%8phFBbSE0$(KXa)Dne@Ct!n zCh$suUoP+~1YRZZD+PX)z^@kgVu4>H@M{Hroxqm}{Ca`kAn>IEUncMy1%8vjZx;A+ zf!`wVTLpfbz*h+Tc7fj^@H+**Qs8$9{BD8YBk+3#exJba7x)7LUnTGd1^yR-KP2#n z1^$S@9~Jmx0$(lg#|8d`z@HTO8i7A0@TUd-jKHe}{;a^)3j8^NuM_z50)Ii^FA99U zz+V#h%L4zaz&8l|ZvuZs;I9gNqrhJi`0E0HL*SbP{-(g+68PH!-z@NV1pcnT-xK&2 zfxj>C4+Q?9z-t8lk-$F|_$LDYRN$Wp{BwbSA@Ev(Zx#5L0t`C?=A2?0=IuB z<%Zu+@IO-EM+v;Yzy}EYXn`Li@PPt9R^Z18-2PpdTMns${~&=&zatwg_zw|yn!ryK z_(=kf34Ex)hY9>-fu{?6xWGpU{1ky_2>eumj}-VQfseNM)}ior0Ot(Nld&Pd(RLW} zahf0OV&^F0XKLPs`N_bOST{wc;9p97f)1xMpHxo#am~jtzn%C*&5vjPB=JnmvzfmE zJS;u$lK&L#zaRU5Ogu~TeVEq)zr{I6a~0-(Cu8{(X}&l640?j)zZ#x{re_HeI%tsTq{Z|n$)BcCB|KA1PWdw$Qk@i>dRtkJO z@k_M73cv3u7>>Sj&IRPZUi*L*RjGXeu(2gmjwMEpAKufi!H{+7k(3jTK!zh3(v&GD`k z_`Ae!(EcjkF9rS+@nzay%_B#ghWXl}c@D=rllXGY3z=U}e52+n-VcF?)#EQhI8hi# zJ2z}VS#T0-od#~=W8(MD}6HZO`1<r!v2b_)nTE|96S+(p-g~3LU2dZYlF|F3X#V+w0g5iN|Sw z7?$ZcE)T=8*S8lDZ>IfKyx$T}&|HNxb_RyChvv%vapEmBSNZyecuUPwIX#nLA<@Cv zO>^bHg!o>XtNi{-++IfwDZp@&w7&{x7IAxBdN=U{wZBULkHnKT@5SltT8QEAXYnb- z+iHFR`)?rLMsp}eI+~w@;T)uS3iAx&QO#R1FClKPhZhjvtlP<{?0*aK_Bxya%r^@D z+ljxc!-=u~Zbg{RjyfDwJ_Ct&(p>eU3B>JiW)fGc0mn(@@V68HK*xI^^UlQ>ugxbD zx7Tm?0S_Bj*N}e~ozB)Aewz{uzq7>)iTBYQmi=@jmZE<@&0$$Z#|q$K@%}{qM`?c; zF6cOBCWiBo&aW!x1;mfl{wkdx5m&1x$5G|nV-|*UjP_UcK9_i^=IuG&FNqJ*T!lY& zHimP8=4#ziP5ea7)q1I(_z=xc=kR;a!Ej=lr!rqk+#YX#ByNwZfuK8e2=M%(F(Oi|!@pCa8d;GkKc!u^*<8YjL=%1qbQOr*u zZjYZUiQD634e^mW9F^Z5u&@amC#Mk~W%)l!e6;3+IXy?f0M)@cO>>ps$B3VL}u8Xn)mTDv7t&T#dtV4BsBNPbHpZg|m?ORL#3^_{)eNq4`MW zUlZ@9xtf1REW~(i|67Rn(Ej~7oNdH&H1EfJ;6)gY9sW|{y|jNf_Wy#o9e(eNF&x|f zeBx*8a8!G9E(sq$n*;CQoTL5KczX`nc)8;@p;-`&DUct#qjNM{#N1_Xn$1>pAomm z|4|hf&I0YfFQ@-5;umV(o_X`j(7#M`RSr{#57WFC`>!N!kI&nQ+v9NmN(|o~hwmW1 zNQa-t;rF>5{VOzw>4T0P#O-l%@D=E9kB3(gx5vX4Rp?)-!&mVxC0?buig(JD=)YL= z(>OhM6Ten-^<>re#O-mi$5j~4678?X`8?wGIC&NE>$Sg{Up^wfRCCqedtQy<->i9W zPUi*0Z`541+dGKc(PIe=BmA&M%*5+ zE+_t=_E+uaE8-7nuG4b^hHsB2w-aBe{Z&2I0B`Sj|A$Vs+vKGfj_p5+_{BP$9$XHW z0}pEt*OLDu+J83B?_HK*_>XC>+Tq`c+vCra*9J?@=N{3Y$L`o&7(FKe#Gu^q%WXs*VALsx{CLs#H%A5HtKbS@zNs>Qz|{<`L= zoc?~dV>lZ%@4)<0;`TW94sm+%jTuuC4 z?XSvhJMk@=t8zGMC5H3S|6}f4;NvQ)1|Fb5MZ|)D1wm3NP~O=*+LVX%wQbX;Nk~#C zh;FyZwhc|PA=#D|QHr9XA1W#WDr!+gP!L2wRMeuVpn#yD@CjNK0TmPk5f$~DGk0e8 zzxT0w?`BiK{Xvub_uMmQ&di*7+_`fdxAvT^d9eMy@>-Gqt&>04_~E^pKk4{f!w>(0 z$p6uC>$jUUf5vfJj!$a-yyJf}dU9VBJ%4rF>Ul=<7Xy6dbt3ZWKMc zId1jTeOdS`1N_H4nzIgTEsB_i%db zIAopXQv&=J&G&NL*3Y_|MNcqpG-C=pWJi^^RNp-_g82zz_SX=y}YQ*TF{5IT8F` z&41uZF@ei5@ zc`hKoDS|(vc`%Nx`?lzLt+QvA$=B72Ppd1wcevH?J-3SdQBK~*jrVANjN>O7`9Evk z;JB@CC*2`>f^qCl%^RJ(E%)~ChF-z6aby9mDW zF3}T==f6{YT3zvd)3$t1y<6l@aQbceKB)N{9k=B>|A!(!$8lS}AJ;q>&wsA@JSV@% z)RTjLBzhJ&Zp&-6=D~P-mF5eby!HPhnlEzP`g7NNM1QcJ&(plk$y+@aYre#BtLGuj z+a2HE*gyGR(I1SrCu_dU$y@#J*Sy1V>$hKM9*lcu+$Z{j@$E6qyPTerjXi6BEb_tl z_M+z9PTtz{*84@i$8p;a?)HH2V7xj-^I#mfNAu-QkF7rk{zUYg=J-)eq_(_{Ux{y~usw)fp068;t^Z_~Y0^Ni!x4@dn>yYPLK6N@6ScgfaBH=TQy(jxV2~M!y-TE_*CP!w@`3hi_?~cihI+ zNsoyBU_EcsJXp`q)qKS1v3CAQ^RpbccJ}_S=nvM1&uMo)i|JyYW)`vSa5BhnRUy1(noE}^5 z8O`73c$cx~yPBWtc&p(%ZxcNiIKJBOPR%zvZsYBFnqTC&P50-Tzt8a%M$gn=i~b88 zKh^LzY5so4TMU0z^LIPG%J7!oh@N0Q8PoiOPTuxYU(-BT5C5t8B~ISj-}_t9|6#|i z-)__VLylX&{X_GQId1*7;BnFOQOB*{3YuT(xJ~yS%|Gq9_1mj{Cwe~Vxb<6?=AUug z`t5g`f5P!q#&1VFA$o%CZms55IeF{1FKK?Y<3}4k2Rz$yhrn3y}C#98=U+!Bj5N3 z(Q~8Y*3Y+Tev{+2A9-H$n;o})TlGiL6RZy(*8El{Z~gX&=9f8c{dUyTq9@4D)BLMW z-umrlnt#plH=BGN^^E8V*4qu5f5XXJzulvGuwL!?C(-jwCvW|Bw&ve*-1_Zbns0U7 z`mOcPqUSpSKB#%HUVTOLU_IIG*>F8?)cj7TztQ;NQq8~T_$BR{UWRvS{*>cq8Gf1OzjFLA z!~d@N(~jGAn)^|F`2dzdzIbua4XNw!SQScHG${=iYEOqIs}yaQATK{0S$os<-|WG@tD3vE$g=BIKXY zd{-xL?LX;1lI|az{*#UV0nK-F@{0|>HbVZVng{F8>+5z<`geDFmKZ&G&G&HJ+Vha+ zFFAYOVdQt)LG(;<@;1MRX}(v0k7^#&^Lfqx;q+VoKdkxQPLIv+K|4yiLHRDtUv_%V z-_bMl?GgMs&0p>G+x+glljyH={4$f@V*uoV<-!U)B65$E`ninJjvO_3dEI8=Sn&*QuHx zWP7^MdA0j$8li^$M|bmgCkx=V~5o7eCPa1SfCp zKYTaQbDZPOe$8h)ZtKIZHJ|IawZHk5qUS`%ZG9Nhyv=c&?tPjsa@^*3>h7W^?YPZv zzvfFExB1=iRU$v%aa$j{G!M4x%QSCy^0q!ap?Qbnc07FQ9-=>3&)=(gmy@^S;h$)J zpySpLhrL?#1o^p|pX}uAc=#dBdmLY9>i^MGL{G3iZqj_YlegpH2Q&}1m#KS-o>QH? z9S?8Te1+rI&y)8O`O_V@_~|BJFK8ZY7yG?N(p}}` zt(_}0?{nPRd5h*b$E`g_?=5el6Yn;3-$6GZ&$#Gkbd+j57f_zx>wNBpV_ddz^a1iu_rQ+j7inJ{I7g z(>z$u|D<`a-Y(it^au64P4o3mf1~lk&o$rR_$bll3nQ}bZG{iEjRIQiR+ zo{L^5dd_wHB*V99{&vT$AD-1bSa08OfanRzH)_7w>9O{|S@U4My+ZSMIQf*ZXRiZA z{{@a)dpb1_*3VCC9;|QwiO_Sx>qY;&oqp@jPip=i$F2P@YW`lwt^BEK02Wr?zOVWJ zIQer;zJ}FCXthttaXY`bTk{VD_`cIbK3GpiH2yvztQ|tj@!6#z;w~G#c}J01)5*! zxXst7=AU)k_RCu}|D5Ai&)$cK{$Tm8*ZgWHZ}tCJ^J^TpemnY5(enkzt>3QE{7a5o zzwLdP$Y1Zc_1hVm-{ANu#-G<~ex2jf4WBwg^aSfePV+B2c{?7sP4llfZquzlT=ZP- zxEe0%PnYJmIBw?=pNf#bPxG6dyw!jB5u*PJ$1}$M<(hxhaXXLrbcFnmG!NE?=QaPD z)3eCvpLV3A`whpfJtLam?)b2gzfbdEJ$b`XqUT#q-qx#gHQ(yE)&ED$?+EZ^M~j~C zIBv(!pVB<&=chIQzLU55Pd-NU-08Tr=MK%k>$q)SuRd1ff8@9wf95p*f#bH_U8(s` z9k=Q3+#q@$aNLeRyEXr@wCsriGB+x~Q3O7z_8xSdCTMDt*Mcue!3IeFV2k8Kn^ z4?AxC`6kVO;kdQ`Y|S5W-1hr-YyPO?*3K6+|E1&mntHNNlcf7A$8EYpns0O5j-#H^ zJm}}?&7$WwPTr2A&er^H$8EX%EP}VRh@Rg%c{`4}T=U;KZpV%P&^%Zlx@L-=C!M?< zN8O}(u)KDfCGx*_^46d0HUER-)}On!iu}`#+y1&k^FKLm%j^A`|Jm_A#|FV;}{n~3!47dNSn*Ynm+jjJ@=Kpcr_G`1>D0+6- z#ilvO{PI=JcXr(NYlogB@{=65<#?9nlO4C?f$wR)ljF8uYnmf^c6Z#?|Fbm@=J!6$ z_i*wy{vSD4^h|Nw+Ve@xcX9koldqpg@IB{=o;{ts)w4nK-5fvG=(#R}|3>q@oV<-2 zC(hrYZd%bB+G#3xpr-xJ~zCnjh=|+}inJ#np4Tj$3=`773r_xV2|k^VyDDd!Eqzc*m_hZ&@sQPIP>=vFAy}r_~+e zxV5LFP2~4;+|CPb)%4y3d0z3bcK6DqV$Tex$J#Sr@i6&Q zBKUb)&ormUjzgZ)e7fUnjGbq+OS*?SZsXy16%R}If3^G(PQKab*=w2T8FJiSn^xTZ zZbbEuHw!mww&Z6<$iE|ke^BwT`aG#a_*`et>rEo>)_lI>HqJkx__Vq+9k({`*eQB~ z^>ak?w3D~`|ET#Q$F2SaU81MWaV!5Z&6hfEZH6GqRgdqhu=AE)`LPTtyimFA~AeyGv2Z?EWC z5#SeUeum@ojr@z6zr}Iu&$Y`%&q~K_y5G}0>$sJlb&AOMId0`I*1X^GA(QTZG+*tw z)wAwY(X%$df2_EzOGbtM@mIyC)eSm%+urwFAw2K6jWY`rucre0d*<}h+f%KX%$ma5 z(OkAalkF=EY{+FsHl!OHg0wJNmx+*9Uv$h?R}8Pu^ljXzb>=qqt<4Uv$z`&`N^yUG zy6cpI0l!>hCX+4XhX(qhBpO>X8Na5?*ue0b!Cbm4s888Y)E6z+I4eYJ|G?Ntw$QgW zL~moNL~jMj{@m*9`oThGFyFT>Gm;-1=-ZT*jL*zuM#c(*vvV7Bed`MY`QgS5srII^ z+*xJ59m$SHe>+=!n^`|xRzr*XzNgTxih3YFFg#EYb5b*h2FAve8OrzBkwR{CZ01Tf>LrX*FXn)Q#pp10mx~}|KuBVV48p-u*YlFh=safmVhBssf2l|(J zskV8d&8N*>*4~;P9nFs}8(Y(!nk|247PNJz=l8aqlFrQSUeu#?`UM-c;3?_up0>`8 zP>EJ8v25;=&hAVZxyGjMbXR(AZ+bzdH0^Muy>l1EFt4%EDJ{7mT<847bGtKb9T^c_ zJhx*(dpcZBzCX3CcX6hpGt;wt;lj2Rp>ng+9Sbs@3nkO@=JvKN6TP8=4MuR;+^*2? zTZ-Rj7Pfbu8Y*O!^rTM?{oX23-$yHHTDH8sx2>x^Ew+Xi_)I4I+B!~AQVTMR)8Srju>#9G+U9pI2rsf`E0pe;ubdp3 zQq%H|r5&B8s^aflnhvkZO$$2bO9fF%+UItMYe}mTFE7$;>sc8!t-W*SiJG>K1tUI*IFgsJuW1hk=nZ}0G)7_oMU*b8P_b|znOE6kw=GPE zT;7w3PBPVOYfKrLMqBebD%Q<1)uBn1QUy0Q&zrkIT2h%1n`#l61?leeLiK;g{P3b} z5}}^u^LplYw{?X#%0?0CTHdpG-rV_1Lw(#J5^Wtl>F#h1vzK=)o7+2ov5NMKx;vM5 zMaIU~KYpx4l z5wX8j{Isym^fWD_`BnKsOJ9C4Kib~Xt)iyqy;44}-Fm%*tNzmq10}R&QFq!zvl2e@ zv~;`eN=m+Ho@d*930ARUkwhZxtdeh<=btv$3zsFh<P6b>W#4Ln89kJg>7or1~{2Xj>MnGBewHRg;+?{6d8V z6`tDLIzlQ=%RI%sXj4*Tv%1p~^Yj(XYKAaY$QIO0M#k3zYM^_L`b!4aYWmZk8!L>i zSCcFCcZ1AY7PWWIo7=7~S-&dNmdS0%4Hq&aqxrtv*jRq_n7)w_8Ikl9W_pvEwpHo* zE$LN;d2_YKfqum{l&}R3q}0S}Y;ATl*Pj_FjJ9>8X6ptnX%zCRm1l;=){M>6qx(!- zPquACI-PFE3{G9&j@e6NIt|?oNj3B02*cLo@ttJ;$8DYW#9Ep0uij4D9& zuPQ>DSWiI};3>JjLVh%}Dm#{I>sKQE>2#3}42=wyNN0xD7jhf5w9TAKLPPs^(3Vzh z%e?htF+_@~&Gc$;^fg`;it)LcAT)}>YSeX7|tp1%D0 z;X>O4whWs|RbrvdDo(Ynq@!G;m%!55(`;(pxNIn@sjl+QZ)sD8s7PdjnyKGqnt-YH zws3VFcYj1Qf#UZwH|Pdp+eYz=gymm!zpL17%R;P9HS5;WWy5@W;f4+AC0#v@nY7BZ znyD-p>Fl-b-x?RF7lC*%%S5JhTEak+3IoVVM6@keBg$9yVrHYdm>4xSW)j(W{gzZ= zugb)|V1gag*)!9&rwISo!bdI@{Qcm?(9rmniiifyJ*rr9x0h zc?5!0T2-7jiB)2)H%3V{WERU^1MSiFp;S7SqV`n{p}N)&4@d>k!&No%^~MM@Giq76 zkW-_bRI^=H@6Qe93VPh*3w0duR1-Igb;MWeO2<;wsJ1l*wMyNB7|xFlWd}0@YVBRu ztgfYrbQfGF(X5Ans=URs>F%W_03kJB9ga02aG_$ndTj0kxr;F?(bdlD*p{e_N&lv5 zgStJ{Gvc*LJI^U(*R=I!(#1|RhShQ6Ugdz`oEb-5C11qRAuX{gm#6|r7(s3BReB*& z!bEKZ#8it3^sZ7zU)HT+p^k@Moh=SROTtP+I(Be%p+#zm3sa?`#AT>Zb?jCH<`xqI zjqcWry0?{Imm6(UbEf27g09rcu+E;=QoX9Qbo}%Bf{vcdI1|zlLdS^Cp4l#nR~31^ zE=&zvr37_sZd>go)dX=q3csXsI4>ZKGF2V4Yf)Dcj+Cldi(ZBkvxNJh`& z)MAL&RmENCh#0+%XY^cs!;LT|M!cvr+^*iHgu%oGAL(ChLqz!pI;lYY2?U&MTiBo@ zASQ8d+@mVAdllx?jrW1GWVm7*XWTK1%D8Pa(Rr_`DXEK+EnTQa>^iSEmUB%u&H{Riq!EB$bw8j{WiVoFTmp4*7LArF7>Gn$mtfu{}z?CDT^2 zq`p1URKcS-Cu-K~hsB{-3^Rbn1)?u5*E8Fz)kq@gWCWM`I(4-yn5<*=*2trCP?OHF zMLLF_jOy@xw~wV>>(Rh}&45~jhe~7Q7;!=QpSXWEa0;)V3H(6LciSN~c1p zFCMB%j!b`jHwl7M7jJ>cPE1PgU^J*Z7=gKtSyZ%lrE4%S_1di0dSc8vJn=>|E324( z440?%h@ixbW^aGcSfO9j(mU4=FQzU_w2BhyBZBP@5Ob=i1gF_>bV%Z@5(d)U*oEfey9eQe$+gv zG~>lNnt!iEgxR5Pi+R^9iAq%xL#kJEOSq-?-;!vm?2!^jCiY0l)wUqV=aEpARe2;- zll4f_fycyG9k2Zb1{D!E1;SQqN^LB*LRFKbY*e>t?+$nyG!pxu#G?~YS!&>e5*sV~ zKshE(gYwTyt8bF2=sg$Fwv=S5DqBi4xRx4iOX9jw5*$l{x$O!|hTf?rxj^l6Rhxy? zu3*y{c;)Z)^$9MsjXLy_l2%bMff8w}H?cEHydA?Csov4-nR+|krueQ1xyTwE?g&~{ z*%6esdW-ETywS|^?o8S|R5iAU(h;=5?CSNhVsE#UA2_IIkn+QY(fnYSdJeQOE;}oz za^^+_7=J#K##8_Gu2H+#RCXIr;sQ)OB#AQ6dB#8NDwe0DWwwGwxi7-~Nxc}MrY6p; zpj*}3#6GQ{(z-Tj!15PWQZM?i4|ku}P{%XE38Yip0TD6AQ8Oyn9!j=8I%;mlyBY`I zg^s=Yi$Ty-SQFsAZVQ(O?&pUM+9FCcX$eHAnW%z@O0IHwM73vs(N;6c@#}E8j~?eJ zk$#huy>}EI86$FBjhPXuVpyBBa`_!%to0`Op@Rh96%~gGKKaT4$a>rBuajmd!gVG2 zDz?vvk~I6Ly0W8L_0UyunWw7ZN~)qZ>l0PJNexOI1u7a-jD}T=4l3uhsy?lv(bj{B zYfGf&iFWMxySg&Iu0F^{E3GPyMY?waLRm%A%LKK^Yb%Dg$SZA?RKdpE8#F!Ztf)Q2Qh=*k;IFuX8tEX)9a;}fQKbIlN z4CVU=RuAOlpeMD+o@#Q(9_gW@dJH+`9z!lZn%pSNJki{_aG^RoKpm4}(nFArij+Pgzw zDIZ&4gd{Uwi)lSm&B3#))JaxisN^O$I;2P;XYXQoatr*blwUe^o{Bd@n#a!0j;K4! zlGC1o{!1N#VN+5zsO?AeJiSfbI#a(6=Vd`awmW79#xi;v zduDK8T~78T$}<-!MThe0e6YU!uz8+c8Q-QJHj$e&t@hijI#gl#yx|#3Iko+*zeY>PfFWNUu)L>RY=mvpPF4sB@%tPN=8o^%G?4SF3})&dCjV zrJ(wATb61&U&H{z*D5PCM^~B&cheTjX#$LLbs+p1-7*nCJtbAlQR%kHu=$wJSLw>R zsvNH>>=uN55v4i)Br5nXMgkSx7)yt-BjllV{}BVO(9|qk9jcc~r5aTfRtHR|wxPA0967@3Uij$$22>JD3hD_av^ zQbqjYc>zfcQtl}}D_=!(j&Xg=QnF@Lc8yNcTam0RJbU$Me#kpIuzP9vl+PDs>K2@O z%xG@)G3p4(jT3LDsFLMz60r17)?%{Sj+vwrHq~DsW1R>mPjF8D>sz zadPHw^ZnA03Kuvxr6o5sQrP5;WM$xLj?4&D{W8yA*r_m81(PnGBvUk3jrNisfipi< zdWuM@RgG5ry_>8XvZDhs-j42{ie^N1Oil#F7?Or9wlZ0@B5s%-m`6k#>VH08UD_=h zZ|xvrS#~(PMjhSi!LGseYX;O&IBN#f*uguDHfUEsWvb>Xt;;GW-aJ;wk9hU2vaoez zWyuybwHPf#>2*chGMXF9MT+?y)jT#bFzo3p7G-L@XTStAGL0Y* z*2~EH4k=1Cc_n4eJ@Y*1GHt1hU&8v6=F-5^yjl%;w2DH~;hZjM)dMBHu0>Cmyn5vw z-Zy(Nzb2ED^QL8hc#fFveUVDZH)m%@howr|@5bBftx`ePw99d-YEq5G%SiDyz;Ldu z7KetUSLv3awq^y+BvEU5@_cH~LRqlsSXxXvOt==d^n1%;9m-pQWt8Y)M)@Tjt{JM8 zJuDchBkv_Ls98akx@CK~-XcC?`U{kDh*ERMK;LPTBl|cint0!il<88%Br6 zRE!0{@-0ivXH^w(=ba@xe!#ofJ=wsSwwvFUU99pHV4pZzc5$K~V-lJulc9FTNJM73 z%2}SdWg3a;RXu5YAYjstuY6i&z*k(w3Yud?WUVTC-KX?K!&H;kuI;eE>s0KN#8Tal zRMC?cr=scxhunu~>kbJuW?-1^REr6znWO4m(YJjP4Wq5ZXqL;qh5U_b< z{n%P{+a%dwGu5DPu6d`lVxgv7MUIM2rS6@*CZAOyKu&*!-WU}xp88aSiC~gIWEd+o zDV4HuEYU?ankBiYaX7m{$8zm}$e`@AuUTDX;&`&_Fpe){rK>BcCS6(F;6HJ#neC6* zHq~NfcXK^`J1=Gh?US+ zX>(Xal-svnNR%+4R_o$*y=G}jscf-FEtt+Xo&vKh7`?cx>T82O(!w1t7SAv;o~1tuxA7*n~!U8`&;ws)JLwo=Kw7!_Tbi?Om|QN>YLgA$98OvUDDJQLnR zVMw4H3RCBjvun(8(}}D^J%!fH0(r4Xep6eQdcWfa zHNKRRQRmpH6+=Cka7#xvF=Iv1OS!YQ?*gWBcd~IWMurJ5EPCAA#;1Zt?2~LmUJEed zY031dH+2?r%Dw1g!cHIZ-vrSo;zo5X>eLrE287<&_Ll3m)Uu${UEJ*_#h|xk449L1 zW2fc$M)os?9)~NN2>Nq<*-f%-(Mx#2NQXLZM^{S^sOP{{A23^nmp$|K!nT`Rsa>c& zW{0SpJgzoThNcqR+Ai<0bCsZ~dJQEqFeNv*zdseel^fAv`xLHSp|7+2doF`DJW9W5@kumCa5_Kwy zxyBghI@>gAWQJ82)zadaG=U8+M)DKh?#69{zkS4BsBrN&`AbIJ1}OK20DW5_q;EC1 z_w3?`lh+UPS~XHh1EWTJV-R&H;c7u?Vz!%0oLhDOq`1g2tPTMhOLxf&0o*B`E}ghe zkeJk;vr7SL_A=sWv?~G$^J#a7sa6(Pdx>_eTaxhxo%W`D?CPV(@cKomX6+}FUB5BT z`j45+l#a{IfvCZ)mp4ZL2)fk@Hzu!X}LF+C4RM# z&N=4gs-=$its*+(5zY*pg&Av|$2+hzkaeG_3B0IGEa$~U?|m!Lg_Wk_!cc8qaa86u z%3QlFq}rHzO4w^@6Z;Um3W?)?;gYT?eBqLRJt_7APB8+iM}4b(jg9nT>WN!>KcULS zq*O|7P0sc4mrlJ-QCB>U4}$%^j7brd86MB+2LG^P0MQR zTU=<<<%XrNu+gZiJLM+?O{#TxEv!-=LI!4T^(%B8io>*uYlDfkV<}L%Bk|2O*)e3s zf`RP&?yI@^Xt^Z;_e?b0Sd|_O^Ga8#W3Bb5PT5-nw%cCR_%`Y-TE0h3Bi0zoWx9OT zl0jlM#;Eu#>mTyowK#cJ9s9(bIx#!?)Cu)f$f*H3GPskm{Sj06*ARz+m*ZlYR9vG0*8Zk$Pl zPVd8JW;Xx+iGP!N`%9x4DOGrXWzi>9t;Fb2N%EB#b(Cmk)%w+H&%8cqNB6)bs}v!_ z0lP4#)*ocx)l_oZG`iaKmpX^LSj^rMSq5s;FRV~n%$Pv!H%Xghyy=^7rkr?Uujf{n z*qiB~xfO0!HhWJg&Qk47@{-x36?dgp?P`c@jkGVKsKFWo)m3Yf%wVla_WY_^y!BXY zvs-CvsaNdv=~bT8`z`DXTWhqjL)8v5xn~8Lpv17=dOuQ=chs1AKwwBc^w73K?b}g%crip@F)BxyOB-|_D`yqj0b0_{hQ<4` z<)(x(f_%hP))v+C)EZfbW<)wAXaVToBUp?kvo^mLEiQR7!JqIqA;P|dC*>PY;fiY+D#rd@iOU#(a zcN1BS_7iSRkR_>tI#)yOf6%i@cehWsvyz+X@$XP4iDJGS#7{&|^Q5)tgQR_Gs&m9z z^^#5N2rnp>I3T%F6|{=8bQv2}dvjN1*39gbU3MxKazj=|8@^Yrs&=VX-=(3bP0!64 zy>eq#kYtTnZuhRu4XPtP^=vUjXV`mOJ*C}haM$gxC^B7KqAHV`C`!tzeB5MI7p{A< z!>rE8mZET*tDTHSw``SEg2|(q1lCBMukAPMXsMkikFBX=8^-dhliinAqiC5;Y7ZB0 z$|lO=hT=#(;V89n;wLyVX^-)eflBi$HC-t`Sk;X~CN=0qlowmoVeEF)ux7n_xIfpg z@6gr4rsj$^c{}Z#1^u$OLwdOGo_RLrsd!=y^uCt4z;?2(cq3dT8t=}d3WmzTHezp& zf>lAUcw@I&A71eP!FTF`=LN%FzqLKQ;NKYZ->f!n$XTPBTDfhz6cf+G5#eIY+@$SQ zyOI;r88NM>>=PLb)HdG5H0{3|_G)Kjc=U^*Up6Tu3xY9}O4X}a=o1kOW7-y@)RTq8 znCVvZNzEc-OoL)L!iB5t9TRNA(WBim%K>g}r|gabEa6nMQsNR(cM!ssE6PpV)2()- zqy|vMU6Dywy`;ieMc#sqo`_fFGv9n5-UbA@Vd!7)h)%tnN31uiyV}+kHB4^Il)Zsf zrq-C}xy=l|A+uObzrC9Va^EucLWbU7FY6d)`fm4EsFk&n>3jU81t_z_)#{b$H2|xo zs;Rqvbf9GF9=Zc2E^7``$KNP$&_RM-?>WubIaM>@Sk&A_5p z6lDBvR}>`w{yRs}_kqjL{_KigEman8AIDy9fEn?xvFXI@ENU=QR&~)gax8nVz6SG~ z7MUumHz_n`+VkoyWFz^(0d+8aqpWEa?>p3F+FNnF;GP7C4w^MFBs$BeC82#_O_Gl> zOksCA+dX9P-<(;>z*=oa>2jNlWVzM$)!Th}6LU8bPbf*cwUP| zyo%ARCDS%EGFZ$&4PtfNG`DL$)tEVI6)@?(Ak*W>E~f3_t?jo)=+y-kL%sV6GQJA! zU*ffl^lbM=QW-8d?{CnX-+J{ztapYv+Oxd-bWpvhG^geOdarZLW>`9jk2w;GIbp9@ zpUtD)CASX7J0OZ_Tl63y>9{Cnf|Z?NV+l&tw;Lf=yNPK}v;(XiQMI_1R&4*lQcU;6 zFsz1SrrH_x|E%z8Jc6p3pTY-HG1SYn$t^)gw^SGDF6rH&Lo467+Pbk zzE?5Us&Uf)ja)~JykZWYYUO~~qo`UXn0PQ1BVqMaKyAlVandXqT9peGfwecc>C;rZ z=!?s(Q5RPkhPsy8EpHLy(nu3Zmj2Budv)fh?oy0Uql%OotGYcqWmdRVknUF7uJlF4 z9Xe$$za}(FXeGlIyIS&S_xpv9gzdo#%(Uk}MtI8qExmci6+pc`8`yp%9=A0bu zW0`=AZ(Z6HmMDswc5O2cZQdP;=t>uBJX&e-HhMU0UGZNtz}_wTuNe>;NdBAagE9sy zu2%XZiVP`gvA_^x3ZNsDw;=alE1i-dwk+W4XRe~naYNH`O~UN7uw&Bgv0P*N{YEUJ zjDJng8?9H0An{znAw;uYmQgiCJ-DqZfjW6z-FlOu68v86l8l5t=^wpN4u$`f)qom> zzZe51X}8f~xJFTM+;-G97{)XwMkuOHOst(fwF`|gZHlfsRY%AeDJKtNdsarD+Odd5kvG>Gy9Lt$qhnXdo#aY{%XDVav=;@_b|eBy*0aX;4Eta?TNTNh0e5Haknp}}_e)#bom9mm<)U7oYYTkB$krt-s_klY?kaER0kxPiop6;Nfh3zAZqVTR1z}*#TH%V43?N{j`53e6)Z1P z?q$}Sf`v7n`0e6oh4vQSVzD(to*^zhu{25BFY`Dt<|68OH@!UwXM)E`L4uCY)RRsy_FsDh(BbXVhkv(x}PP(yLFojNhyD zNyPhs!p^xY&5#*?rtzX6)#s`$qv`=%cL1MyeqOyNFr!?AY7uc-PK+d7sjGTmLZs@D zy5uj_Rjb)`Z>A@m=~>{N#HOB&^=?dzqoUhzR9%HLSNk46kC9Qe5g_bMToo#Pcqdy; zqYu?ort+b5<2U+}L~7CKOBCArSw*7{)f2PPmt32;(U)9pb5O?bl^cDi#w3kCRKdhH z`qCsPw9%I)r52Y|%X52>D>nLaSI24erPoI^`Xt-LN<(xy-873`=&(A5Vpt8}bWC>l zItTK@mDia2g7*>|9;S_UFuDOS+9d8f`)ml{$3Du!C{gGi~);wWXi1d*u3{qv$Kf=G#K29cOU1Fu$A_b`cX{9;QeZZiyB z^(eLr-SO(_khvQYH%Iy!w_7JxjSDv=RV8g)C0B=co8B60rN&jFsAR8n+;(1~!I?7t z#ucu2+>NV5?F2Ng68*(Vs~X6PZ@l5`c5hr!MonDfDoN3MSwi5X?s((N(q`(_YI~!r z*qxLcW|e3tS3`@V!f}M_;%#Di{Hv5}d1ftsGGCePz(J|)J5NAn49J~3=a)_h77 zrjs_GlB;Xld`dKjJ3D^!DN&~PeEN2K#;Zyt!J=gESmKsgs;byc*oQqPFudY*h@p#B zsU|V5D?g@Q)}?OnhHWYci%}7m;WmAO)a)`(l1og79ePPgC+fvLyFaJ=t-D!s`{;$x zJvK2?EP4U&8SakNPp8YgK6oZx9~`64w_Ytar|^rSGHoX&l{0K56Ss@fmg-HayaC=g zRn@MEm6%v`r5fM4L4Cz0mg*hNo~d?FISOHudTl^F}G@lq#EH-5NvEID(x?H9cKmr&Re07!^J^ z-i*7;DN0wFTki-Iv9~<1qW8U*?Z z`6yRg5}9fPZ@jP{VO7%TAECzDQl^kl>#NFUXd9_YQ;k|wva~0%XQ)spaXW~3YGU*g zQHnyl3$?79U_ssA1=VuXOF*}E9D0mc!{tatF>jmsuXnA>-O#RL|6EL^#oHV%u`;($ z;wklJtLAQFyxZrIipRMDCQ7d|5o70Z+BnWlFi|$zi7%>Sf*TM4t;L9hl?tz@CSW&R zndJRL<>Xso{K~l*CL+A3m$WC?bL$P<0?pTqq>6VMi#tXuToJn(n-@kS^+}F zdS1Dj<9DjtB^jbsjUYLI^ahSe!g)kbk*I7c>|%&YqT1kINnfCnBpWA~NnL4`vbIi$ z?qm@^BKzT8lvnE#1^!Cg_t+-{m#O)Va0Z&1M@A)_6y!0dhE$bGNs#FfPRUPDrov6UHI&Cl2uT}FkdsOUDHNEM|sVZe$|;{t`7 zX2#z19ig$B@D-uT88_}IRw;pC#Z>)3g7uIH{k4y25efZ232l|Ft0uy!maM{rdbz#2 zd%j8Dy&k^LCG_?>107;bb?Zl5P9N_$A*4zdX8;LmUNEv3w^UTUxiz449Q*V9y27jK zMDNgxXGNktdVZBjcj@`BujM{HzwU6S$KI*uR~KWio*Gi%24Pe*RedX~YlC?Md9yrm zUHLJUi0;~Z_(b1Jt7bo8L=ZFiNwlp!LRGnbt*Rgpkxr>|tK6v@rF$G9Awp$%C7tNV zkjR)s0U|>Wy2~Z6gdsq+%Eu=U!dE=5Qxe+Dhot zQaWd;a8G}xx4E?|JDMHJ6^aLl#osIFPd(8NIp4+O+#~1HR$M|IuM_P2Cv-IEPt`=# z=nQj?}8yEmTpb@;mNzM=mKv>Pft3 zC{mNnWtlRoyltqW_9Q!pDk_`U%|p@27w^dU?}dziXK8dDw*^$g-qSlqAp9iohqmXG{wmX>`{3YrOGBo6y_pLAqAC^D{iS6yrP8R*K|sf<`_-7&*b>Pjro`>8<<78sJWT zLr9M`7bs(Rv5psSzL(kh6s^fNnxdL2wreF;U!1?Y74;fgU(KET$kKBT8t={giYZie zKfj{Z@t$&2xoqtm1Jyfp>>bhMqjON~Mz+VMuQC}e8shKIl5hWtP6oI488}0I84~3& z*;esUoj%}#xDMfR7`!@4cjjnzxIaIX$@cZ-#>O(zt7O%ae3?RaO}f=yqi%J|`b*bR z73kFyUg}1$-Yr$d=xbc}^df7<1Ptn29EyKuFWNkBvXJO#r|4>d0A%hri;0>3Y$2=C zu`gb5_Kz=)j{6p0v{TY0YoYp$()Pf$?G!omQu}t?!%(J7ixH)odwuG(D&?|D_xj2d zg*hT>C^salCsnO@L~G|%S&tF9O(Jn8VD}i->Q-QMq15I^K(t><>VKCCs=gz2%A9@^ zZFKl*&4k|$h|FcUJ<09}L@G~wQy@}PP45dtrV{Rq*f$iTOFhP|#iR{wTt|YGu{5v} zTrw*R9o!@}J>1P04~4FNN80SgFK_Eq!YdQqLWneAoHr99_1Z~evP{|GJ;$WuoxYYX z&-TW9Yi8y5s@Qu!?Og9@%(UnG)@4TWg9Ck=(v5nRL#-ghc(G)y60{!NzKJ&2vEg>i zsXDbx9jQAoHj*Fn&OzJ0j`ouGwm|(ia^I|Szb02uBeOxdB`F8s7iJeWjpQ-|!>jXZ zm=&|8mwT(1nGV#bijO;`M0I=osU@k@<4�+FYY_6IbK$ryHaGss=q%y@*h~vr8>8 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 literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..0b087806a0bd863a75913237b8edb853500e0bef GIT binary patch literal 76200 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≠NK(9q`ox{yYbKoq(@) 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 literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..f411fb84f5f6d173c5f3a4f0f24d9e51996a304b GIT binary patch literal 690240 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 literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/CXX.includecache b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/CXX.includecache new file mode 100644 index 0000000..7b16d48 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/CXX.includecache @@ -0,0 +1,278 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_geometry_msgs/Point.h +- +robot_geometry_msgs/Quaternion.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_std_msgs/Header.h +- +robot_geometry_msgs/Pose.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +string +- +vector +- +memory +- +robot_protocol_msgs/ActionParameter.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +string +- +vector +- +memory +- +robot_protocol_msgs/Trajectory.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +string +- +vector +- +memory +- +robot_protocol_msgs/NodePosition.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +string +- +vector +- +memory +- +robot_protocol_msgs/Node.h +- +robot_protocol_msgs/Edge.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +string +- +vector +- +memory +- +robot_protocol_msgs/ControlPoint.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +string +- +vector +- +memory +- +robot/time.h +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +yaml-cpp/yaml.h +- +robot_xmlrpcpp/XmlRpcValue.h +- +memory +- +string +- +map +- +vector +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +iostream +- +math.h +- +stdexcept +- +climits +- +stdint.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +stdexcept +- +string +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +robot/macros.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +robot/platform.h +- +iostream +- +cmath +- +robot/exception.h +- +duration.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +sys/timeb.h +- +sys/time.h +- + +../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +map +- +string +- +vector +- +time.h +- + +../include/mission_adapters/adapter.h +memory +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/mission_request.h +- +mission_adapters/types.h +- + +../include/mission_adapters/mission_request.h +memory +- +string +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +../include/mission_adapters/types.h +cstdint +- +limits +- +memory +- +string +- +vector +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.cpp +goal_source_adapter.h +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.h +cmath +- +boost/dll/alias.hpp +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.h +memory +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/adapter.h +- + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/DependInfo.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/DependInfo.cmake new file mode 100644 index 0000000..4934c51 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/DependInfo.cmake @@ -0,0 +1,68 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o" + ) +set(CMAKE_CXX_COMPILER_ID "GNU") + +# Preprocessor definitions for this target. +set(CMAKE_TARGET_DEFINITIONS_CXX + "BOOST_ALL_NO_LIB" + "mission_adapters_goal_source_EXPORTS" + ) + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + "../plugins" + "../../../pnkx_nav_core/src/APIs/c_api/include" + "../../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/angles/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include" + "../../../pnkx_nav_core/src/Libraries/costmap_2d/include" + "../../../pnkx_nav_core/src/Libraries/data_convert/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/laser_filter/include" + "../../../pnkx_nav_core/src/Libraries/laser_geometry/include" + "../../../pnkx_nav_core/src/Libraries/robot_cpp/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include" + "../../../pnkx_nav_core/src/Libraries/robot_time/include" + "../../../pnkx_nav_core/src/Libraries/voxel_grid/include" + "../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include" + "../../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Packages/move_base/include" + "../include" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake" + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/build.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/build.make new file mode 100644 index 0000000..1b80849 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/build.make @@ -0,0 +1,99 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh + +# Include any dependencies generated for this target. +include CMakeFiles/mission_adapters_goal_source.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/mission_adapters_goal_source.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/mission_adapters_goal_source.dir/flags.make + +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: CMakeFiles/mission_adapters_goal_source.dir/flags.make +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../plugins/goal_source_adapter.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.cpp + +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.cpp > CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.i + +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.cpp -o CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.s + +# Object files for target mission_adapters_goal_source +mission_adapters_goal_source_OBJECTS = \ +"CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o" + +# External object files for target mission_adapters_goal_source +mission_adapters_goal_source_EXTERNAL_OBJECTS = + +libmission_adapters_goal_source.so: CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o +libmission_adapters_goal_source.so: CMakeFiles/mission_adapters_goal_source.dir/build.make +libmission_adapters_goal_source.so: libmission_adapters.so +libmission_adapters_goal_source.so: CMakeFiles/mission_adapters_goal_source.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library libmission_adapters_goal_source.so" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/mission_adapters_goal_source.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/mission_adapters_goal_source.dir/build: libmission_adapters_goal_source.so + +.PHONY : CMakeFiles/mission_adapters_goal_source.dir/build + +CMakeFiles/mission_adapters_goal_source.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/mission_adapters_goal_source.dir/cmake_clean.cmake +.PHONY : CMakeFiles/mission_adapters_goal_source.dir/clean + +CMakeFiles/mission_adapters_goal_source.dir/depend: + cd /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/mission_adapters_goal_source.dir/depend + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/cmake_clean.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/cmake_clean.cmake new file mode 100644 index 0000000..11662ee --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o" + "libmission_adapters_goal_source.pdb" + "libmission_adapters_goal_source.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/mission_adapters_goal_source.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/depend.internal b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/depend.internal new file mode 100644 index 0000000..78210e0 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/depend.internal @@ -0,0 +1,30 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/adapter.h + ../include/mission_adapters/mission_request.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.cpp + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/goal_source_adapter.h diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/depend.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/depend.make new file mode 100644 index 0000000..3dae5cc --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/depend.make @@ -0,0 +1,30 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../include/mission_adapters/adapter.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../include/mission_adapters/mission_request.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../plugins/goal_source_adapter.cpp +CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o: ../plugins/goal_source_adapter.h + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/flags.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/flags.make new file mode 100644 index 0000000..6d59449 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile CXX with /usr/bin/c++ +CXX_FLAGS = -fPIC -Wall -Wextra -std=c++17 + +CXX_DEFINES = -DBOOST_ALL_NO_LIB -Dmission_adapters_goal_source_EXPORTS + +CXX_INCLUDES = -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/APIs/c_api/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/angles/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/costmap_2d/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/data_convert/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_filter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_geometry/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_cpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_time/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/voxel_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/xmlrpcpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Packages/move_base/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/include + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/link.txt b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/link.txt new file mode 100644 index 0000000..fb82082 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -shared -Wl,-soname,libmission_adapters_goal_source.so -o libmission_adapters_goal_source.so CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o -L/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib -L/usr/local/lib -Wl,-rpath,"/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh:\$ORIGIN:/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib:/usr/local/lib:" libmission_adapters.so -lrobot_cpp -lrobot_time -lrobot_xmlrpcpp -lpthread diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..050c4ab0ab48a5b27ab042f7a4724f6a65d0b1ad GIT binary patch literal 390992 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௳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%0D0Y7Xkl+f`1MBFY<;#?AFeIiQq40f0Rk{ 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 F|3BJ4-va;u literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/progress.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/progress.make new file mode 100644 index 0000000..b700c2c --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_goal_source.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 9 +CMAKE_PROGRESS_2 = 10 + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/CXX.includecache b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/CXX.includecache new file mode 100644 index 0000000..20db836 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/CXX.includecache @@ -0,0 +1,394 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_geometry_msgs/Point.h +- +robot_geometry_msgs/Quaternion.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_std_msgs/Header.h +- +robot_geometry_msgs/Pose.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +string +- +vector +- +memory +- +robot_protocol_msgs/ActionParameter.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +string +- +vector +- +memory +- +robot_protocol_msgs/Trajectory.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +string +- +vector +- +memory +- +robot_protocol_msgs/NodePosition.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +string +- +vector +- +memory +- +robot_protocol_msgs/Node.h +- +robot_protocol_msgs/Edge.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +string +- +vector +- +memory +- +robot_protocol_msgs/ControlPoint.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +string +- +vector +- +memory +- +robot/time.h +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +cstdio +- +cstdarg +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +atomic +- +csignal +- +string +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +yaml-cpp/yaml.h +- +robot_xmlrpcpp/XmlRpcValue.h +- +memory +- +string +- +map +- +vector +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +string +- +vector +- +map +- +yaml-cpp/yaml.h +- +filesystem +- +robot/robot.h +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +robot/init.h +- +robot/console.h +- +robot/node_handle.h +- +robot/plugin_loader_helper.h +- +robot/time.h +- +robot/timer.h +- +robot/duration.h +- +robot/wall_timer.h +- +robot/rate.h +- +robot/exception.h +- +robot/macros.h +- +robot/platform.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +iostream +- +math.h +- +stdexcept +- +climits +- +stdint.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +stdexcept +- +string +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +robot/time.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot/time.h +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +robot/macros.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +robot/platform.h +- +iostream +- +cmath +- +robot/exception.h +- +duration.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +sys/timeb.h +- +sys/time.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +robot/time.h +- +robot/duration.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +functional +- +thread +- +mutex +- +atomic +- +condition_variable +- +memory +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +robot/time.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +functional +- +thread +- +mutex +- +atomic +- +condition_variable +- +memory +- + +../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +map +- +string +- +vector +- +time.h +- + +../include/mission_adapters/adapter.h +memory +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/mission_request.h +- +mission_adapters/types.h +- + +../include/mission_adapters/mission_request.h +memory +- +string +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +../include/mission_adapters/types.h +cstdint +- +limits +- +memory +- +string +- +vector +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.cpp +vda5050_source_adapter.h +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.h +algorithm +- +cmath +- +string +- +utility +- +yaml-cpp/yaml.h +- +boost/dll/alias.hpp +- +robot/robot.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.h +cstddef +- +limits +- +cstdint +- +map +- +memory +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/adapter.h +- + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/DependInfo.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/DependInfo.cmake new file mode 100644 index 0000000..4c341d6 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/DependInfo.cmake @@ -0,0 +1,68 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o" + ) +set(CMAKE_CXX_COMPILER_ID "GNU") + +# Preprocessor definitions for this target. +set(CMAKE_TARGET_DEFINITIONS_CXX + "BOOST_ALL_NO_LIB" + "mission_adapters_vda5050_source_EXPORTS" + ) + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + "../plugins" + "../../../pnkx_nav_core/src/APIs/c_api/include" + "../../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/angles/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include" + "../../../pnkx_nav_core/src/Libraries/costmap_2d/include" + "../../../pnkx_nav_core/src/Libraries/data_convert/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/laser_filter/include" + "../../../pnkx_nav_core/src/Libraries/laser_geometry/include" + "../../../pnkx_nav_core/src/Libraries/robot_cpp/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include" + "../../../pnkx_nav_core/src/Libraries/robot_time/include" + "../../../pnkx_nav_core/src/Libraries/voxel_grid/include" + "../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include" + "../../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Packages/move_base/include" + "../include" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake" + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/build.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/build.make new file mode 100644 index 0000000..27906f1 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/build.make @@ -0,0 +1,99 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh + +# Include any dependencies generated for this target. +include CMakeFiles/mission_adapters_vda5050_source.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/mission_adapters_vda5050_source.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/mission_adapters_vda5050_source.dir/flags.make + +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: CMakeFiles/mission_adapters_vda5050_source.dir/flags.make +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../plugins/vda5050_source_adapter.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.cpp + +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.cpp > CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.i + +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.cpp -o CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.s + +# Object files for target mission_adapters_vda5050_source +mission_adapters_vda5050_source_OBJECTS = \ +"CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o" + +# External object files for target mission_adapters_vda5050_source +mission_adapters_vda5050_source_EXTERNAL_OBJECTS = + +libmission_adapters_vda5050_source.so: CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o +libmission_adapters_vda5050_source.so: CMakeFiles/mission_adapters_vda5050_source.dir/build.make +libmission_adapters_vda5050_source.so: libmission_adapters.so +libmission_adapters_vda5050_source.so: CMakeFiles/mission_adapters_vda5050_source.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library libmission_adapters_vda5050_source.so" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/mission_adapters_vda5050_source.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/mission_adapters_vda5050_source.dir/build: libmission_adapters_vda5050_source.so + +.PHONY : CMakeFiles/mission_adapters_vda5050_source.dir/build + +CMakeFiles/mission_adapters_vda5050_source.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/mission_adapters_vda5050_source.dir/cmake_clean.cmake +.PHONY : CMakeFiles/mission_adapters_vda5050_source.dir/clean + +CMakeFiles/mission_adapters_vda5050_source.dir/depend: + cd /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/mission_adapters_vda5050_source.dir/depend + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/cmake_clean.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/cmake_clean.cmake new file mode 100644 index 0000000..3fc197c --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o" + "libmission_adapters_vda5050_source.pdb" + "libmission_adapters_vda5050_source.so" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/mission_adapters_vda5050_source.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/depend.internal b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/depend.internal new file mode 100644 index 0000000..13edfc8 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/depend.internal @@ -0,0 +1,37 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/adapter.h + ../include/mission_adapters/mission_request.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.cpp + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.h diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/depend.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/depend.make new file mode 100644 index 0000000..dee4165 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/depend.make @@ -0,0 +1,37 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../include/mission_adapters/adapter.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../include/mission_adapters/mission_request.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../plugins/vda5050_source_adapter.cpp +CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o: ../plugins/vda5050_source_adapter.h + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/flags.make b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/flags.make new file mode 100644 index 0000000..7eb42b7 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile CXX with /usr/bin/c++ +CXX_FLAGS = -fPIC -Wall -Wextra -std=c++17 + +CXX_DEFINES = -DBOOST_ALL_NO_LIB -Dmission_adapters_vda5050_source_EXPORTS + +CXX_INCLUDES = -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/APIs/c_api/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/angles/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/costmap_2d/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/data_convert/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_filter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_geometry/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_cpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_time/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/voxel_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/xmlrpcpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Packages/move_base/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/include + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/link.txt b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/link.txt new file mode 100644 index 0000000..855b91b --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -fPIC -shared -Wl,-soname,libmission_adapters_vda5050_source.so -o libmission_adapters_vda5050_source.so CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o -L/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib -L/usr/local/lib -Wl,-rpath,"/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh:\$ORIGIN:/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib:/usr/local/lib:" libmission_adapters.so -lrobot_cpp -lrobot_time -lrobot_xmlrpcpp -lpthread diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o b/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..cf60d64418b088bfc885d54805fc9ecc7dc1e791 GIT binary patch literal 1262816 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 z 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

Op#{B1${w<~@&@CO4wP4Q2#FTZ~$_y04B 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]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_geometry_msgs/Point.h +- +robot_geometry_msgs/Quaternion.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_std_msgs/Header.h +- +robot_geometry_msgs/Pose.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +string +- +vector +- +memory +- +robot_protocol_msgs/ActionParameter.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +string +- +vector +- +memory +- +robot_protocol_msgs/Trajectory.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +string +- +vector +- +memory +- +robot_protocol_msgs/NodePosition.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +string +- +vector +- +memory +- +robot_protocol_msgs/Node.h +- +robot_protocol_msgs/Edge.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +string +- +vector +- +memory +- +robot_protocol_msgs/ControlPoint.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +string +- +vector +- +memory +- +robot/time.h +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +cstdio +- +cstdarg +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +atomic +- +csignal +- +string +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +yaml-cpp/yaml.h +- +robot_xmlrpcpp/XmlRpcValue.h +- +memory +- +string +- +map +- +vector +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +string +- +vector +- +map +- +yaml-cpp/yaml.h +- +filesystem +- +robot/robot.h +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +robot/init.h +- +robot/console.h +- +robot/node_handle.h +- +robot/plugin_loader_helper.h +- +robot/time.h +- +robot/timer.h +- +robot/duration.h +- +robot/wall_timer.h +- +robot/rate.h +- +robot/exception.h +- +robot/macros.h +- +robot/platform.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +iostream +- +math.h +- +stdexcept +- +climits +- +stdint.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +stdexcept +- +string +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +robot/time.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot/time.h +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +robot/macros.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +robot/platform.h +- +iostream +- +cmath +- +robot/exception.h +- +duration.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +sys/timeb.h +- +sys/time.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +robot/time.h +- +robot/duration.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +functional +- +thread +- +mutex +- +atomic +- +condition_variable +- +memory +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +robot/time.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +functional +- +thread +- +mutex +- +atomic +- +condition_variable +- +memory +- + +../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +map +- +string +- +vector +- +time.h +- + +../include/mission_adapters/adapter.h +memory +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/mission_request.h +- +mission_adapters/types.h +- + +../include/mission_adapters/event.h +atomic +- +condition_variable +- +cstdint +- +memory +- +mutex +- +queue +- +vector +- +mission_adapters/mission_request.h +- +mission_adapters/types.h +- + +../include/mission_adapters/event_processor.h +atomic +- +thread +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- +mission_adapters/event.h +- +mission_adapters/mission_manager.h +- +mission_adapters/mission_request.h +- +mission_adapters/plugin_registry.h +- + +../include/mission_adapters/mission_adapters.h +robot/robot.h +- +mission_adapters/adapter.h +- +mission_adapters/event.h +- +mission_adapters/event_processor.h +- +mission_adapters/mission_executor.h +- +mission_adapters/mission_manager.h +- +mission_adapters/navigation_client.h +- +mission_adapters/types.h +- + +../include/mission_adapters/mission_config.h +string +- +robot/node_handle.h +- + +../include/mission_adapters/mission_executor.h +atomic +- +memory +- +mutex +- +thread +- +mission_adapters/mission_manager.h +- +mission_adapters/navigation_client.h +- +mission_adapters/types.h +- + +../include/mission_adapters/mission_manager.h +condition_variable +- +memory +- +mutex +- +queue +- +vector +- +robot/time.h +- +mission_adapters/mission_config.h +- +mission_adapters/types.h +- + +../include/mission_adapters/mission_request.h +memory +- +string +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +../include/mission_adapters/navigation_client.h +memory +- +mission_adapters/types.h +- + +../include/mission_adapters/plugin_registry.h +functional +- +map +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/adapter.h +- + +../include/mission_adapters/types.h +cstdint +- +limits +- +memory +- +string +- +vector +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/robot_control_example.cpp +cstddef +- +memory +- +robot/robot.h +- +mission_adapters/mission_adapters.h +- +mission_adapters/plugin_registry.h +- + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/DependInfo.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/DependInfo.cmake new file mode 100644 index 0000000..1e41081 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/DependInfo.cmake @@ -0,0 +1,61 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/robot_control_example.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o" + ) +set(CMAKE_CXX_COMPILER_ID "GNU") + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + "../../../pnkx_nav_core/src/APIs/c_api/include" + "../../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/angles/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include" + "../../../pnkx_nav_core/src/Libraries/costmap_2d/include" + "../../../pnkx_nav_core/src/Libraries/data_convert/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/laser_filter/include" + "../../../pnkx_nav_core/src/Libraries/laser_geometry/include" + "../../../pnkx_nav_core/src/Libraries/robot_cpp/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include" + "../../../pnkx_nav_core/src/Libraries/robot_time/include" + "../../../pnkx_nav_core/src/Libraries/voxel_grid/include" + "../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include" + "../../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Packages/move_base/include" + "../include" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake" + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/build.make b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/build.make new file mode 100644 index 0000000..d28bb25 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/build.make @@ -0,0 +1,99 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh + +# Include any dependencies generated for this target. +include CMakeFiles/robot_control_example.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/robot_control_example.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/robot_control_example.dir/flags.make + +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: CMakeFiles/robot_control_example.dir/flags.make +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../examples/robot_control_example.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/robot_control_example.cpp + +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/robot_control_example.cpp > CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.i + +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/robot_control_example.cpp -o CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.s + +# Object files for target robot_control_example +robot_control_example_OBJECTS = \ +"CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o" + +# External object files for target robot_control_example +robot_control_example_EXTERNAL_OBJECTS = + +robot_control_example: CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o +robot_control_example: CMakeFiles/robot_control_example.dir/build.make +robot_control_example: libmission_adapters.so +robot_control_example: CMakeFiles/robot_control_example.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable robot_control_example" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/robot_control_example.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/robot_control_example.dir/build: robot_control_example + +.PHONY : CMakeFiles/robot_control_example.dir/build + +CMakeFiles/robot_control_example.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/robot_control_example.dir/cmake_clean.cmake +.PHONY : CMakeFiles/robot_control_example.dir/clean + +CMakeFiles/robot_control_example.dir/depend: + cd /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/robot_control_example.dir/depend + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/cmake_clean.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/cmake_clean.cmake new file mode 100644 index 0000000..2d03313 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o" + "robot_control_example" + "robot_control_example.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/robot_control_example.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/depend.internal b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/depend.internal new file mode 100644 index 0000000..2d0ff38 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/depend.internal @@ -0,0 +1,44 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/adapter.h + ../include/mission_adapters/event.h + ../include/mission_adapters/event_processor.h + ../include/mission_adapters/mission_adapters.h + ../include/mission_adapters/mission_config.h + ../include/mission_adapters/mission_executor.h + ../include/mission_adapters/mission_manager.h + ../include/mission_adapters/mission_request.h + ../include/mission_adapters/navigation_client.h + ../include/mission_adapters/plugin_registry.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/robot_control_example.cpp diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/depend.make b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/depend.make new file mode 100644 index 0000000..8adbe95 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/depend.make @@ -0,0 +1,44 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/console.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/init.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/plugin_loader_helper.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/robot.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/rate.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/timer.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/wall_timer.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/adapter.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/event.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/event_processor.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/mission_adapters.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/mission_config.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/mission_executor.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/mission_manager.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/mission_request.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/navigation_client.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/plugin_registry.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o: ../examples/robot_control_example.cpp + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..702fc80cd19d70618acb563142c828cd1fd89323 GIT binary patch literal 118152 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¬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

$1o-kRg^uEP5w2?i(&oqRWDv1@*tS&WU-|Ge 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 SKL!8u`wvVx4g?6nZSo&#a5&rm literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/robot_control_example b/build-standalone-codex-5j6ZZh/robot_control_example new file mode 100755 index 0000000000000000000000000000000000000000..dc752afe2ee98cde623db78afb62e9c9092c6a8e GIT binary patch literal 99088 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 WInLhno9+IKGt8;A#tp_-=l=odI0*#+ literal 0 HcmV?d00001 diff --git a/cfg/stanley_local_planner_params.yaml b/cfg/stanley_local_planner_params.yaml deleted file mode 100644 index f1bab79..0000000 --- a/cfg/stanley_local_planner_params.yaml +++ /dev/null @@ -1,11 +0,0 @@ -LocalPlannerAdapter: - library_path: liblocal_planner_adapter - yaw_goal_tolerance: 0.017 - xy_goal_tolerance: 0.03 - min_approach_linear_velocity: 0.06 - -StanleyLocalPlanner: -# base_local_planner: "hybrid_local_planner/HybridLocalPlanner" -# HybridLocalPlanner: - library_path: libstanley_local_planner - \ No newline at end of file diff --git a/docs/PLUGIN_GUIDE.md b/docs/PLUGIN_GUIDE.md new file mode 100644 index 0000000..86322f8 --- /dev/null +++ b/docs/PLUGIN_GUIDE.md @@ -0,0 +1,176 @@ +# Viết một nguồn mission mới + +Nguồn mission là plugin duy nhất của gói này. Thêm một loại nguồn (REST, fleet manager riêng, +teach-pendant, file kịch bản...) không cần sửa dòng nào trong `src/`. + +Việc **thực thi action** không thuộc đây: adapter chỉ chuyển dữ liệu, navigation runtime mới là nơi +chạy action. + +## 1. Chọn tên schema + +Schema là chuỗi định danh loại payload, và là thứ core dùng để định tuyến. Đặt tên theo miền dữ +liệu, không theo tên hãng hay giao thức truyền tải: + +``` +vda5050.order # đã có +geometry.pose_stamped # đã có +json.pick_and_place # ví dụ nguồn mới +``` + +Hai adapter khai cùng một schema sẽ bị registry từ chối — định tuyến khi đó phụ thuộc thứ tự nạp, +tức phụ thuộc vào thứ tự dòng trong file YAML. + +## 2. Hiện thực `MissionSourceAdapter` + +```cpp +#include +#include + +namespace mission_plugins +{ + +class PickAndPlaceAdapter : public mission_adapters::MissionSourceAdapter +{ +public: + static mission_adapters::MissionSourceAdapter::Ptr create() + { + return std::make_shared(); + } + + bool configure(const std::string& name, robot::NodeHandle& nh) override + { + // Param riêng nằm trong namespace tên instance. + nh.getParam(name + "/global_frame", global_frame_, std::string("map")); + return !global_frame_.empty(); + } + + std::string schema() const override { return "json.pick_and_place"; } + + bool validate(const mission_adapters::MissionRequest& request, + std::string& reason) const override + { + if (request.raw_payload.empty()) + { + reason = "payload rỗng"; + return false; + } + return true; + } + + mission_adapters::ConversionResult + convert(const mission_adapters::MissionRequest& request) override + { + mission_adapters::ConversionResult result; + // ... parse request.raw_payload, dựng mission ... + return result; + } + +private: + std::string global_frame_ = "map"; +}; + +} // namespace mission_plugins + +BOOST_DLL_ALIAS(mission_plugins::PickAndPlaceAdapter::create, PickAndPlaceAdapter) +``` + +Bốn quy tắc bắt buộc: + +- **State là member, không phải `static` local.** Một tiến trình có thể chạy nhiều instance; state + static sẽ nối chúng lại và order của robot này ảnh hưởng robot kia. +- **`validate()` chặn dữ liệu hỏng trước khi nó tới navigation**: NaN/Inf, quaternion không chuẩn + hoá được, payload thiếu trường. Trả `false` kèm `reason` cụ thể — chuỗi đó đi thẳng vào log. +- **`convert()` trả rỗng nghĩa là "không có việc", KHÔNG phải lỗi và KHÔNG phải lệnh huỷ.** Core sẽ + bỏ qua và giữ nguyên hàng đợi đang chạy. Đây là bất biến A1: một order lỗi từ fleet manager không + được âm thầm xoá order đang chạy. +- **Mission `has_goal == false` phải có ít nhất một action.** Mission không goal và cũng không + action là chặng không có việc gì để làm, và nó sẽ không bao giờ báo kết quả về — mission layer kẹt + `RUNNING` vĩnh viễn. Core kiểm lại điều này và bỏ cả lô nếu phát hiện. + +### `SubmitMode` — thay hay nối tiếp + +`ConversionResult::mode` quyết định mission mới quan hệ thế nào với hàng đợi đang có: + +| mode | Ý nghĩa | Dùng khi | +|---|---|---| +| `kReplace` (mặc định) | Thay toàn bộ hàng đợi, chặng đang chạy bị preempt và được bảo dừng | Yêu cầu mới, độc lập với việc đang làm | +| `kAppend` | Chỉ thêm vào cuối hàng đợi, không đụng chặng đang chạy | Phần nối tiếp của chính yêu cầu đang chạy | + +`kAppend` là hình dạng của VDA5050 order update. Trả `kReplace` cho một bản cập nhật nghĩa là mỗi +lần fleet manager release thêm horizon, robot lại huỷ và chạy lại chặng đang đi. + +## 3. Build thành `.so` riêng + +```cmake +add_library(mission_adapters_pick_and_place SHARED plugins/pick_and_place_adapter.cpp) + +target_compile_options(mission_adapters_pick_and_place PRIVATE -Wall -Wextra) +set_target_properties(mission_adapters_pick_and_place PROPERTIES POSITION_INDEPENDENT_CODE ON) + +target_link_libraries(mission_adapters_pick_and_place + PUBLIC mission_adapters + PRIVATE Boost::boost Threads::Threads +) + +install(TARGETS mission_adapters_pick_and_place + LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} +) +``` + +Thêm dependency cho plugin thì phải cập nhật **đủ bốn chỗ**: `CMakeLists.txt`, `package.xml`, +install rule, và file YAML. + +## 4. Khai báo trong YAML — **đừng quên `library_path`** + +Trong `pnkx_nav_core/config/mission_adapters_params.yaml`: + +```yaml +mission_adapters: + mission_sources: + - {name: pick_src, type: PickAndPlaceAdapter} # type = tên symbol trong BOOST_DLL_ALIAS + +pick_src: + global_frame: map # param riêng của instance, đọc trong configure() + +PickAndPlaceAdapter: + library_path: libmission_adapters_pick_and_place # BẮT BUỘC +``` + +Ba tên phải khớp nhau: + +| Nơi | Giá trị | +|---|---| +| `BOOST_DLL_ALIAS(..., PickAndPlaceAdapter)` | tên symbol | +| `mission_sources[].type` | **cùng** tên symbol | +| `/library_path` | tên file `.so` (không cần đuôi) | + +**Thiếu `library_path` là lỗi phổ biến nhất**: plugin build sạch, `.so` nằm đúng chỗ, nhưng runtime +báo "không tìm thấy". Registry sẽ nêu đích danh khoá bị thiếu trong log. + +Tên không có đuôi `.so` được resolve qua `PNKX_NAV_CORE_LIBRARY_PATH`, `devel/lib`, rồi +`LD_LIBRARY_PATH` — nên **phải `source devel/setup.bash`** trước khi chạy, nếu không plugin sẽ không +được tìm thấy dù file có thật. + +## 5. Kiểm chứng + +```bash +catkin_make --pkg mission_adapters +source devel/setup.bash + +PNKX_NAV_CORE_CONFIG_DIR=src/AMR_T800/Test/mission_adapters/test/config \ + ./devel/lib/mission_adapters/plugin_registry_test +``` + +Nên có test cho: payload hợp lệ, payload thiếu trường, payload chứa NaN/Inf, payload không sinh +mission nào, và (nếu nguồn có state) hai yêu cầu liên tiếp. + +## 6. Nguồn không cần `.so` + +Nguồn biên dịch thẳng vào host thì bỏ qua bước 3 và 4, đăng ký trực tiếp: + +```cpp +registry.registerAdapter(std::make_shared()); +``` + +Đường này dùng trong test và cho host muốn kiểm soát vòng đời adapter; phần còn lại của luồng +(validate, convert, định tuyến theo schema) giống hệt. diff --git a/examples/robot_control_example.cpp b/examples/robot_control_example.cpp new file mode 100644 index 0000000..cfa9076 --- /dev/null +++ b/examples/robot_control_example.cpp @@ -0,0 +1,101 @@ +/********************************************************************* + * + * Ví dụ tối thiểu: nối mission layer vào một navigation runtime. + * + * Điểm chính của ví dụ là hai chiều dữ liệu, không phải thuật toán: + * + * host --goalEvent/orderEvent--> EventProcessor --> MissionManager + * | + * MissionExecutor + * | + * NavigationClient::dispatch/cancelActive + * | + * host <--navDoneEvent(id)/navFailedEvent(id)-------- navigation runtime + * + * Outcome quay về BẮT BUỘC mang MissionId. Bản trước của ví dụ này poll trường trạng thái của + * navigation rồi suy ra "chặng nào vừa xong" — cách đó gán nhầm kết quả ngay khi có một order thay + * thế order đang chạy. + * + *********************************************************************/ +#include +#include + +#include + +#include +#include + +namespace +{ + +/** + * @brief NavigationClient chỉ ghi log — chỗ để thay bằng runtime thật. + * + * Trong hệ thống thật, dispatch() dựng yêu cầu di chuyển từ mission rồi giao cho navigation runtime, + * và runtime báo ngược kết quả qua navDoneEvent(mission->id) / navFailedEvent(mission->id). + */ +class LoggingNavigationClient : public mission_adapters::NavigationClient +{ +public: + bool dispatch(const std::shared_ptr& mission) override + { + if (!mission) + return false; + + robot::log_info("dispatch mission %lu — %zu action", + static_cast(mission->id), + mission->actions.size()); + return true; + } + + void cancelActive(mission_adapters::MissionId id) override + { + robot::log_info("cancel mission %lu", static_cast(id)); + } +}; + +} // namespace + +int main(int argc, char** argv) +{ + robot::init(argc, argv, "mission_adapters_example"); + + // Nguồn mission được nạp từ YAML: thêm loại nguồn mới không phải sửa file này. + mission_adapters::PluginRegistry registry; + robot::NodeHandle nh; + if (!registry.loadFromConfig(nh)) + { + robot::log_error("could not load enough mission sources — check " + "mission_adapters_params.yaml"); + return 1; + } + + mission_adapters::MissionManager mission_manager; + mission_adapters::EventProcessor event_processor(mission_manager, registry); + mission_adapters::MissionExecutor mission_executor(mission_manager); + + LoggingNavigationClient navigation_client; + mission_executor.setNavigationClient(&navigation_client); + + event_processor.start(); + mission_executor.start(); + + // Nguồn mission thật (MQTT/OPC-UA/REST) gọi các hàm *Event() này từ thread của nó. + robot_geometry_msgs::PoseStamped goal; + goal.header.frame_id = "map"; + goal.pose.position.x = 2.0; // [m] + goal.pose.position.y = 1.0; // [m] + event_processor.goalEvent(goal); + + robot::Rate rate(20); // [Hz] + while (robot::ok()) + { + // Runtime thật gọi navDoneEvent(id) / navFailedEvent(id) ở đây, với id lấy từ chính mission + // mà dispatch() đã nhận — không suy đoán từ trạng thái navigation. + rate.sleep(); + } + + mission_executor.stop(); + event_processor.stop(); + return 0; +} diff --git a/examples/vda5050_order_demo.cpp b/examples/vda5050_order_demo.cpp new file mode 100644 index 0000000..ce9f50e --- /dev/null +++ b/examples/vda5050_order_demo.cpp @@ -0,0 +1,142 @@ +/** + * @file vda5050_order_demo.cpp + * @brief Chạy một VDA5050 Order qua VDA5050SourceAdapter và in ra các chặng thu được. + * + * Order dùng ở đây lấy nguyên toạ độ từ một order thật do fleet manager gửi xuống (4 node, 3 edge, + * edge cuối có NURBS bậc 2), chỉ khác một điểm: gắn thêm một action vào **node thứ 2**. Mục đích là + * thấy tận mắt adapter cắt order thành chặng như thế nào khi có action ở giữa đường. + * + * Chạy: ./devel/lib/mission_adapters/vda5050_order_demo + */ +#include "mission_adapters/mission_request.h" +#include "mission_adapters/types.h" +#include "../plugins/vda5050_source_adapter.h" + +#include +#include + +namespace +{ + +/// Một node released, kèm toạ độ thật lấy từ order của fleet. +robot_protocol_msgs::Node makeNode(int sequence_id, const std::string& id, double x, double y) +{ + robot_protocol_msgs::Node node; + node.sequenceId = sequence_id; + node.nodeId = id; + node.released = true; + node.nodePosition.x = x; + node.nodePosition.y = y; + node.nodePosition.mapId = "97b3bf93-10c5-4c79-2cc9-08deee20817a"; + return node; +} + +robot_protocol_msgs::Edge makeEdge(int sequence_id, const std::string& id, + const std::string& start_id, const std::string& end_id) +{ + robot_protocol_msgs::Edge edge; + edge.sequenceId = sequence_id; + edge.edgeId = id; + edge.released = true; + edge.startNodeId = start_id; + edge.endNodeId = end_id; + return edge; +} + +robot_protocol_msgs::Action makeAction(const std::string& id, const std::string& type) +{ + robot_protocol_msgs::Action action; + action.actionId = id; + action.actionType = type; + action.blockingType = "HARD"; + return action; +} + +void printOrder(const robot_protocol_msgs::Order& order) +{ + std::printf("ORDER GUI XUONG (orderId=%s, orderUpdateId=%d)\n", + order.orderId.c_str(), (int)order.orderUpdateId); + for (const auto& n : order.nodes) + std::printf(" node seq=%-2d %-10s pos=(%7.3f, %7.3f) actions=%zu%s\n", + (int)n.sequenceId, n.nodeId.c_str(), + n.nodePosition.x, n.nodePosition.y, n.actions.size(), + n.actions.empty() ? "" : (" <-- " + n.actions.front().actionType).c_str()); + for (const auto& e : order.edges) + std::printf(" edge seq=%-2d %-10s %s -> %s actions=%zu\n", + (int)e.sequenceId, e.edgeId.c_str(), + e.startNodeId.c_str(), e.endNodeId.c_str(), e.actions.size()); +} + +void printMissions(const std::vector>& missions) +{ + std::printf("\nKET QUA: adapter cat thanh %zu chang\n", missions.size()); + std::printf("%s\n", std::string(78, '-').c_str()); + + int idx = 0; + for (const auto& m : missions) + { + std::printf(" Chang #%d\n", ++idx); + std::printf(" type : %s\n", + m->type == mission_adapters::MissionType::VDA5050_ORDER ? "VDA5050_ORDER" + : "SIMPLE_GOAL"); + std::printf(" has_goal : %s\n", m->has_goal ? "true" : "false"); + if (m->has_goal) + std::printf(" di chuyen : (%7.3f, %7.3f) -> (%7.3f, %7.3f)\n", + m->start.pose.position.x, m->start.pose.position.y, + m->goal.pose.position.x, m->goal.pose.position.y); + else + std::printf(" di chuyen : (khong - chang chi-co-action)\n"); + + std::printf(" nodes : %zu, edges: %zu\n", m->nodes.size(), m->edges.size()); + if (m->actions.empty()) + { + std::printf(" actions : (khong co)\n"); + } + else + { + for (const auto& a : m->actions) + std::printf(" actions : seq=%d %-12s id=%s (%s)\n", + a.sequenceId, a.action.actionType.c_str(), a.action.actionId.c_str(), + a.type == mission_adapters::ActionType::NODE_ACTION ? "NODE_ACTION" + : "EDGE_ACTION"); + } + std::printf("\n"); + } +} + +} // namespace + +int main() +{ + // Toa do lay tu order that: 14:39:21, orderId c16cd9e3..., 4 node / 3 edge. + robot_protocol_msgs::Order order; + order.orderId = "demo-dua-tren-order-that"; + order.orderUpdateId = 0; + + order.nodes.push_back(makeNode(0, "node_A", 10.010, 10.000)); + order.nodes.push_back(makeNode(2, "node_B", 10.260, 10.192)); + order.nodes.push_back(makeNode(4, "node_C", 14.979, 7.599)); + order.nodes.push_back(makeNode(6, "node_D", 12.986, 2.851)); + + // ĐIỂM KHÁC DUY NHẤT so với order thật: mot action gan vao NODE THU 2. + order.nodes[1].actions.push_back(makeAction("act-tai-node-2", "PickUp")); + + order.edges.push_back(makeEdge(1, "edge_AB", "node_A", "node_B")); + order.edges.push_back(makeEdge(3, "edge_BC", "node_B", "node_C")); + order.edges.push_back(makeEdge(5, "edge_CD", "node_C", "node_D")); + + printOrder(order); + + mission_plugins::VDA5050SourceAdapter adapter; + + std::string reason; + const auto request = mission_adapters::MissionRequest::fromOrder(order); + if (!adapter.validate(request, reason)) + { + std::printf("\nAdapter TU CHOI order: %s\n", reason.c_str()); + return 1; + } + + printMissions(adapter.convert(request).missions); + return 0; +} diff --git a/include/mission_adapters/adapter.h b/include/mission_adapters/adapter.h index e69de29..e009146 100644 --- a/include/mission_adapters/adapter.h +++ b/include/mission_adapters/adapter.h @@ -0,0 +1,95 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Interface plugin duy nhất của gói: nguồn mission. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_ADAPTER_H_ +#define MISSION_ADAPTERS_ADAPTER_H_ + +#include +#include +#include + +#include + +#include +#include + +namespace mission_adapters +{ + /// @brief Quan hệ giữa mission mới và hàng đợi đang có. + enum class SubmitMode + { + /// Yêu cầu mới: thay toàn bộ hàng đợi, chặng đang chạy bị preempt (và được bảo dừng). + kReplace, + + /** + * Phần nối tiếp của yêu cầu đang chạy: chỉ thêm vào cuối hàng đợi. + * + * Đây là hình dạng của VDA5050 order update — phần horizon được release thêm. Xử lý nó như + * kReplace sẽ huỷ và chạy lại chặng đang đi, dù tuyến đường không hề đổi. + */ + kAppend + }; + + /// @brief Kết quả chuyển đổi: mission sinh ra và cách chúng vào hàng đợi. + struct ConversionResult + { + std::vector> missions; + SubmitMode mode = SubmitMode::kReplace; + + bool empty() const { return missions.empty(); } + }; + + /** + * @class MissionSourceAdapter + * @brief Biến payload của một nguồn cụ thể thành mission của mission layer. + * + * Plugin được nạp bằng Boost.DLL theo khoá `library_path` trong YAML, giống mọi plugin khác của + * workspace. Contract này là public interface qua ranh giới .so: đổi chữ ký thì phải đổi cả + * registry trong cùng một lần sửa, vì import_alias là dlsym + reinterpret_cast và không có kiểm + * kiểu nào bắt được sự lệch đó lúc biên dịch. + * + * Việc thực thi action KHÔNG thuộc về interface này: adapter chỉ chuyển dữ liệu, navigation + * runtime mới là nơi chạy action (D8). + */ + class MissionSourceAdapter + { + public: + using Ptr = std::shared_ptr; + + virtual ~MissionSourceAdapter() = default; + + /** + * @brief Đọc param riêng của instance. Gọi đúng một lần khi nạp. + * @param name Tên instance trong `mission_sources` — cũng là namespace param của nó. + * @param nh NodeHandle gốc. + * @return false nếu cấu hình không hợp lệ; registry sẽ báo lỗi và không đăng ký adapter này. + */ + virtual bool configure(const std::string& name, robot::NodeHandle& nh) = 0; + + /// @brief Schema mà adapter này xử lý. Core định tuyến theo đúng giá trị này. + virtual std::string schema() const = 0; + + /** + * @brief Kiểm payload TRƯỚC khi convert. + * @param[out] reason Lý do từ chối, dùng cho log. + * @return false -> core từ chối sớm và không đụng vào hàng đợi. + */ + virtual bool validate(const MissionRequest& request, std::string& reason) const = 0; + + /** + * @brief Chuyển payload thành 0..n mission, kèm cách chúng vào hàng đợi. + * + * Trả rỗng nghĩa là **không có việc**, KHÔNG phải lỗi và cũng không phải lệnh huỷ: core sẽ + * bỏ qua, giữ nguyên hàng đợi đang chạy (A1). + */ + virtual ConversionResult convert(const MissionRequest& request) = 0; + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_ADAPTER_H_ diff --git a/include/mission_adapters/event.h b/include/mission_adapters/event.h index e69de29..0a6c1dd 100644 --- a/include/mission_adapters/event.h +++ b/include/mission_adapters/event.h @@ -0,0 +1,121 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Sự kiện của mission layer và hàng đợi vận chuyển chúng. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_EVENT_H_ +#define MISSION_ADAPTERS_EVENT_H_ + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +namespace mission_adapters +{ + enum class EventType + { + SUBMIT_REQUEST, + NAV_DONE, + NAV_FAILED, + PAUSE, + RESUME, + CANCEL, + EMERGENCY, + CLEAR_EMERGENCY + }; + + struct Event + { + EventType type = EventType::SUBMIT_REQUEST; + uint64_t sequence = 0; ///< thứ tự phát sinh, EventBus tự gán + + /// Chỉ dùng cho NAV_DONE / NAV_FAILED: mission nào vừa kết thúc. + MissionId mission_id = kInvalidMissionId; + + /// Chỉ dùng cho SUBMIT_REQUEST: payload chưa chuyển đổi, adapter sẽ xử lý trên thread worker. + MissionRequest request; + }; + + /** + * @class EventBus + * @brief Hàng đợi sự kiện FIFO, cộng một đường out-of-band riêng cho emergency. + * + * **FIFO là bắt buộc, không phải lựa chọn phong cách.** Bản trước sắp xếp theo priority toàn + * phần nên CANCEL (ưu tiên cao) luôn được xử lý trước SUBMIT (ưu tiên thấp) — phát order rồi huỷ + * ngay thì huỷ chạy trước, order vào hàng đợi sau và robot chạy đúng cái người dùng vừa huỷ. + * Thứ tự xử lý phải bằng thứ tự phát sinh thì quan hệ nhân quả mới còn. + * + * Emergency không đi theo luật đó: nó bật một cờ atomic ngay tại chỗ gọi, nên độ trễ phản ứng + * không phụ thuộc vào việc hàng đợi đang dài bao nhiêu. Sự kiện EMERGENCY vẫn được đẩy vào hàng + * đợi để dòng thời gian trong log không bị thủng. + */ + class EventBus + { + public: + /// @brief Đẩy một sự kiện thường vào cuối hàng đợi. + void push(Event event); + + /** + * @brief Đẩy sự kiện emergency: bật cờ out-of-band trước, rồi mới xếp hàng. + * + * Bên tiêu thụ phải gọi @ref takeEmergency trước khi xử lý sự kiện tiếp theo. + */ + void pushEmergency(Event event); + + /// @brief Lấy sự kiện kế tiếp, chờ nếu hàng đợi rỗng. Trả false khi bus đã stop(). + bool pop(Event& event); + + /** + * @brief Lấy và xoá cờ emergency đang treo. + * @return true nếu có emergency chưa được xử lý. + */ + bool takeEmergency(); + + /// @brief Có emergency đang treo hay không (không xoá cờ). + bool emergencyPending() const; + + void stop(); + void reset(); + + bool empty() const + { + std::lock_guard lock(mutex_); + return queue_.empty(); + } + + size_t size() const + { + std::lock_guard lock(mutex_); + return queue_.size(); + } + + void clear() + { + std::lock_guard lock(mutex_); + queue_ = {}; + } + + private: + mutable std::mutex mutex_; + std::queue queue_; + std::condition_variable cv_; + bool stop_ = false; + uint64_t next_sequence_ = 0; + + /// Ngoài hàng đợi có chủ đích: emergency không được xếp sau một hàng dài sự kiện thường. + std::atomic emergency_pending_{false}; + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_EVENT_H_ diff --git a/include/mission_adapters/event_processor.h b/include/mission_adapters/event_processor.h index e69de29..53f63f5 100644 --- a/include/mission_adapters/event_processor.h +++ b/include/mission_adapters/event_processor.h @@ -0,0 +1,93 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Thread tiêu thụ event: biến sự kiện từ host thành lời gọi lên MissionManager. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_EVENT_PROCESSOR_H_ +#define MISSION_ADAPTERS_EVENT_PROCESSOR_H_ + +#include +#include + +#include +#include + +#include +#include +#include +#include + +namespace mission_adapters +{ + /** + * @class EventProcessor + * @brief Thread duy nhất biến sự kiện thành thay đổi trạng thái mission. + * + * Core không biết adapter nào tồn tại: nó chỉ tra @ref PluginRegistry theo + * MissionRequest::schema. Thêm một loại nguồn mới = thêm plugin + một dòng YAML, không sửa file + * nào trong `src/` của gói. + * + * Việc chuyển payload -> mission chạy trên đúng thread này (không phải thread của host) vì + * adapter được phép có state; chuyển đổi trên nhiều thread host sẽ tranh chấp state đó. + */ + class EventProcessor + { + public: + EventProcessor(MissionManager& mission_manager, PluginRegistry& registry); + ~EventProcessor(); + + void start(); + void stop(); + + /** + * @brief Đường vào chung cho mọi nguồn mission. + * + * Nguồn mới chỉ cần dựng MissionRequest với schema của mình rồi gọi hàm này. + */ + void submitRequest(const MissionRequest& request); + + /// @brief Tiện ích cho nguồn goal đơn lẻ. Chỉ dựng envelope, không biết adapter nào xử lý. + void goalEvent(const robot_geometry_msgs::PoseStamped& goal); + + /// @brief Tiện ích cho nguồn VDA5050. + void orderEvent(const robot_protocol_msgs::Order& order); + + void cancelEvent(); + void pauseEvent(); + void resumeEvent(); + + /** + * @brief Báo một chặng đã hoàn tất (nav + action — D8). + * @param id Mission vừa xong. Bắt buộc: outcome không mang ID sẽ bị manager loại bỏ. + */ + void navDoneEvent(MissionId id); + + /// @brief Báo một chặng thất bại. Cũng bắt buộc mang MissionId. + void navFailedEvent(MissionId id); + + void emergencyEvent(); + void clearEmergencyEvent(); + + private: + void spin(); + void process(const Event& event); + + /// Tra adapter theo schema, validate, convert, rồi submit nếu có mission. + void handleRequest(const MissionRequest& request); + + /// Xử lý emergency đang treo (nếu có) trước khi động tới hàng đợi sự kiện thường. + void handlePendingEmergency(); + + EventBus event_bus_; + MissionManager& mission_manager_; + PluginRegistry& registry_; + std::thread worker_; + std::atomic running_{false}; + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_EVENT_PROCESSOR_H_ diff --git a/include/mission_adapters/mission_adapters.h b/include/mission_adapters/mission_adapters.h index 6986ef8..c4be640 100644 --- a/include/mission_adapters/mission_adapters.h +++ b/include/mission_adapters/mission_adapters.h @@ -1,245 +1,25 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Header façade — gộp toàn bộ public API của gói. + * + * Giữ lại để code đã include header này không phải sửa. Code mới nên include thẳng header cần dùng + * (types.h / event.h / adapter.h / mission_manager.h / event_processor.h / mission_executor.h). + * + * Author: DuongTD + *********************************************************************/ #ifndef MISSION_ADAPTERS_MISSION_ADAPTERS_H #define MISSION_ADAPTERS_MISSION_ADAPTERS_H -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - #include -#include -#include -namespace mission_adapters -{ - // ── Priority constants ──────────────────────────────────────────────────── - // Số càng nhỏ = ưu tiên càng cao (min-heap) - static constexpr int PRIORITY_EMERGENCY = 0; - static constexpr int PRIORITY_CANCEL = 1; - static constexpr int PRIORITY_RESUME = 2; - static constexpr int PRIORITY_PAUSE = 3; - static constexpr int PRIORITY_NAV_DONE = 4; - // FIX #4: Dedicated constant — same value as NAV_DONE but semantically correct name. - static constexpr int PRIORITY_NAV_FAILED = 4; - static constexpr int PRIORITY_ORDER = 5; - - enum class MissionState - { - IDLE, - QUEUED, - RUNNING, - PAUSED, - RECOVERY, - COMPLETED, - FAILED, - CANCELLED, - EMERGENCY, - CLEAR_EMERGENCY - }; - - enum class EventType - { - SUBMIT_MISSIONS, - NAV_DONE, - NAV_FAILED, - PAUSE, - RESUME, - CANCEL, - EMERGENCY, - CLEAR_EMERGENCY - }; - - enum class MissionType - { - SIMPLE_GOAL, - VDA5050_ORDER - }; - - enum class ActionType - { - NODE_ACTION, - EDGE_ACTION - }; - - class Action - { - public: - int sequenceId = 0; - ActionType type = ActionType::NODE_ACTION; - robot_protocol_msgs::Action action; - }; - - class Mission - { - public: - int sequenceId = 0; - MissionType type = MissionType::SIMPLE_GOAL; - int priority = 0; - robot_geometry_msgs::PoseStamped start; - robot_geometry_msgs::PoseStamped goal; - std::vector nodes; - std::vector edges; - std::vector actions; - }; - - struct Event - { - EventType type = EventType::SUBMIT_MISSIONS; - int priority = PRIORITY_ORDER; - uint64_t sequence = 0; - std::vector> missions; - }; - - struct EventCompare - { - bool operator()(const Event& lhs, const Event& rhs) const - { - if (lhs.priority != rhs.priority) - return lhs.priority > rhs.priority; - - return lhs.sequence > rhs.sequence; - } - }; - - class EventBus - { - private: - mutable std::mutex mutex_; - std::priority_queue, EventCompare> queue_; - std::condition_variable cv_; - bool stop_ = false; - uint64_t next_sequence_ = 0; - - public: - void push(const Event& event); - void push(Event&& event); - bool pop(Event& event); - void stop(); - void reset(); - - inline bool empty() const - { - std::lock_guard lock(mutex_); - return queue_.empty(); - } - - inline void clear() - { - std::lock_guard lock(mutex_); - while (!queue_.empty()) queue_.pop(); - } - }; - - class VDA5050Adapter - { - public: - std::vector> convert(const robot_protocol_msgs::Order& order); - }; - - class GoalAdapter - { - public: - std::vector> convert(const robot_geometry_msgs::PoseStamped& goal); - }; - - class MissionManager - { - public: - void submit(const std::vector>& missions); - - std::shared_ptr nextMission(); - - void onNavigationDone(); - void onNavigationFailed(); - void cancel(); - void pause(); - void resume(); - void emergency(); - void clearEmergency(); - - MissionState state() const; - - // FIX #3: Returns true if there is any pending work — queue OR active mission. - bool hasMission() const; - - private: - mutable std::mutex mutex_; - MissionState state_ = MissionState::IDLE; - std::queue> mission_queue_; - std::shared_ptr current_mission_; - }; - - class EventProcessor - { - public: - explicit EventProcessor(MissionManager& mission_manager); - ~EventProcessor(); - - void start(); - void stop(); - - void goalEvent(const robot_geometry_msgs::PoseStamped& goal); - void orderEvent(const robot_protocol_msgs::Order& order); - void cancelEvent(); - void pauseEvent(); - void resumeEvent(); - void navDoneEvent(); - void navFailedEvent(); - void emergencyEvent(); - void clearEmergencyEvent(); - - private: - void spin(); - void process(const Event& event); - - private: - EventBus event_bus_; - GoalAdapter goal_adapter_; - VDA5050Adapter vda5050_adapter_; - MissionManager& mission_manager_; - std::thread worker_; - std::atomic running_{false}; - }; - - class MissionExecutor - { - public: - using MissionCallback = std::function&)>; - - explicit MissionExecutor(MissionManager& manager); - ~MissionExecutor(); - - void start(); - void stop(); - - // FIX #1: Must be called BEFORE start(), not inside the run loop. - void setMissionCallback(MissionCallback cb) - { - std::lock_guard lock(mutex_); - mission_callback_ = std::move(cb); - } - - private: - std::shared_ptr mission_execute_; - - // Last mission that was dispatched to the callback. - std::shared_ptr last_dispatched_mission_; - - MissionCallback mission_callback_; - MissionManager& mission_manager_; - mutable std::mutex mutex_; - std::thread worker_; - std::atomic running_{false}; - - void spin(); - }; - -} // namespace mission_adapters +#include +#include +#include +#include +#include +#include +#include #endif // MISSION_ADAPTERS_MISSION_ADAPTERS_H diff --git a/include/mission_adapters/mission_config.h b/include/mission_adapters/mission_config.h new file mode 100644 index 0000000..5291128 --- /dev/null +++ b/include/mission_adapters/mission_config.h @@ -0,0 +1,64 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Tham số vận hành của mission layer. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_MISSION_CONFIG_H_ +#define MISSION_ADAPTERS_MISSION_CONFIG_H_ + +#include + +#include + +namespace mission_adapters +{ + /** + * @struct MissionConfig + * @brief Tham số vận hành, nạp từ `mission_adapters_params.yaml`. + * + * Bản runtime của file nằm ở `pnkx_nav_core/config/`; bản trong `test/config/` chỉ dùng cho test + * và phải chạy kèm PNKX_NAV_CORE_CONFIG_DIR trỏ vào đó. + */ + struct MissionConfig + { + /** + * Trần thời gian cho MỘT chặng (nav + action), tính từ lúc chặng được giao. [s] + * + * 0 = tắt. Quá hạn thì chặng bị đánh dấu thất bại và navigation được bảo dừng — lưới cuối + * cho trường hợp navigation không bao giờ báo kết quả về. + */ + double mission_timeout = 0.0; + + /** + * Một chặng thất bại thì xử lý phần còn lại của hàng đợi thế nào. + * + * `true` (mặc định) = xoá sạch hàng đợi. Đây là hành vi an toàn cho tuyến đường tuần tự + * kiểu VDA5050: chặng 2 hỏng nghĩa là robot không tới được node 2, nên chạy tiếp chặng 3 là + * cắt ngang qua đoạn đường mà fleet manager chưa cho phép đi. + * + * `false` = chỉ bỏ chặng lỗi rồi chạy tiếp chặng sau. Chỉ đặt false khi các mission trong + * hàng đợi ĐỘC LẬP với nhau (nhiều goal rời rạc), không phải các chặng của cùng một tuyến. + */ + bool clear_queue_on_failure = true; + + /** + * @brief Nạp tham số từ namespace @p ns. + * @return false nếu giá trị nạp được không qua @ref validate. + * + * Thiếu khoá không phải lỗi: giá trị mặc định trong struct này là hợp lệ và an toàn. + */ + bool loadFromParams(robot::NodeHandle& nh, const std::string& ns = "mission_adapters"); + + /// @brief Kiểm miền giá trị. Trả false kèm log nêu đích danh tham số sai. + bool validate() const; + + /// @brief In cấu hình đang dùng — để log khởi động nói được vì sao robot hành xử như vậy. + void print() const; + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_MISSION_CONFIG_H_ diff --git a/include/mission_adapters/mission_excutor.h b/include/mission_adapters/mission_excutor.h deleted file mode 100644 index e69de29..0000000 diff --git a/include/mission_adapters/mission_executor.h b/include/mission_adapters/mission_executor.h new file mode 100644 index 0000000..753edb1 --- /dev/null +++ b/include/mission_adapters/mission_executor.h @@ -0,0 +1,62 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Thread lấy mission kế tiếp từ MissionManager và đẩy xuống phía navigation. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_MISSION_EXECUTOR_H_ +#define MISSION_ADAPTERS_MISSION_EXECUTOR_H_ + +#include +#include +#include +#include + +#include +#include +#include + +namespace mission_adapters +{ + /** + * @class MissionExecutor + * @brief Thread duy nhất phát lệnh xuống navigation. + * + * Mọi lời gọi ra ngoài (dispatch, cancelActive) đi ra từ đây, nên MissionManager không bao giờ + * gọi ra ngoài khi đang giữ khoá. Thứ tự trong một vòng là bất biến an toàn: **cancel trước, + * dispatch sau** — chặng cũ phải được bảo dừng trước khi chặng mới bắt đầu. + */ + class MissionExecutor + { + public: + explicit MissionExecutor(MissionManager& manager); + ~MissionExecutor(); + + /** + * @brief Gắn cổng navigation. Con trỏ non-owning, phải sống lâu hơn executor. + * + * FIX #1: gọi TRƯỚC start(), không gọi trong vòng lặp. + */ + void setNavigationClient(NavigationClient* client); + + void start(); + void stop(); + + private: + void spin(); + + /// Một vòng công việc. Tách riêng để test gọi trực tiếp, không cần thread. + void step(); + + NavigationClient* navigation_client_ = nullptr; ///< non-owning, có thể null + MissionManager& mission_manager_; + mutable std::mutex mutex_; + std::thread worker_; + std::atomic running_{false}; + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_MISSION_EXECUTOR_H_ diff --git a/include/mission_adapters/mission_manager.h b/include/mission_adapters/mission_manager.h index e69de29..2b4fd10 100644 --- a/include/mission_adapters/mission_manager.h +++ b/include/mission_adapters/mission_manager.h @@ -0,0 +1,165 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Trạng thái và hàng đợi mission — nơi duy nhất giữ MissionState. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_MISSION_MANAGER_H_ +#define MISSION_ADAPTERS_MISSION_MANAGER_H_ + +#include +#include +#include +#include +#include + +#include + +#include +#include + +namespace mission_adapters +{ + /** + * @class MissionManager + * @brief Hàng đợi mission và trạng thái của nó. Thread-safe, không tự gọi ra ngoài. + * + * Manager cố ý KHÔNG giữ con trỏ tới navigation: nó chỉ ghi nhận "mission này cần được dừng" + * (@ref takePendingCancel) và để MissionExecutor thực hiện lời gọi đó. Nhờ vậy không có lời gọi + * ra ngoài nào xảy ra khi đang giữ khoá, và mọi lệnh xuống navigation đi ra từ đúng một thread. + */ + class MissionManager + { + public: + MissionManager() = default; + explicit MissionManager(const MissionConfig& config) : config_(config) {} + + /// @brief Đổi tham số vận hành. Gọi trước khi có mission nào đang chạy. + void setConfig(const MissionConfig& config); + + /** + * @brief Nhận một loạt mission mới và cấp @ref MissionId cho từng cái. + * + * Semantics (A1): danh sách rỗng là **no-op tuyệt đối** — không đụng hàng đợi, không đổi + * trạng thái. Một order lỗi không phải là lệnh huỷ việc đang chạy. + * + * Submit khi đang RUNNING là **preempt tường minh**: mission đang chạy được ghi vào ô + * pending-cancel để navigation được bảo dừng, rồi hàng đợi mới thay hàng đợi cũ. + */ + void submit(const std::vector>& missions); + + /** + * @brief Nối thêm mission vào cuối hàng đợi, KHÔNG đụng chặng đang chạy. + * + * Dùng cho phần nối tiếp của một yêu cầu đang chạy (VDA5050 order update release thêm + * horizon). Khác @ref submit ở chỗ không preempt và không yêu cầu dừng navigation — tuyến + * đường không đổi thì robot không có lý do gì phải dừng lại. + */ + void append(const std::vector>& missions); + + /** + * @brief Lấy mission kế tiếp cần chạy. + * @return Mission MỚI, hoặc nullptr nếu chưa tới lượt. + * + * Chỉ trả khác null đúng một lần cho mỗi mission, tại đúng bước chuyển QUEUED -> RUNNING + * (M6). Bên gọi vì thế không cần tự khử trùng lặp. + */ + std::shared_ptr nextMission(); + + /** + * @brief Ghi nhận một chặng hoàn tất (cả navigation lẫn action — D8). + * @param id Mission vừa xong. + * @return false nếu outcome không thuộc mission đang chạy (đến trễ sau khi bị thay thế). + */ + bool onNavigationDone(MissionId id); + + /** + * @brief Ghi nhận một chặng thất bại. + * @return false nếu outcome không thuộc mission đang chạy. + */ + bool onNavigationFailed(MissionId id); + + void cancel(); + void pause(); + void resume(); + void emergency(); + void clearEmergency(); + + MissionState state() const; + + /// @brief Có việc đang treo hay không — hàng đợi HOẶC mission đang chạy. + bool hasMission() const; + + /// @brief Mission đang chạy, kInvalidMissionId nếu không có. + MissionId currentMissionId() const; + + /** + * @brief Lấy và xoá yêu cầu dừng navigation đang treo. + * @return kInvalidMissionId nếu không có yêu cầu nào. + * + * Chỉ MissionExecutor gọi hàm này; nó là cách manager nhờ executor gọi + * NavigationClient::cancelActive() mà bản thân không cần biết navigation là gì. + */ + MissionId takePendingCancel(); + + /** + * @brief Chờ tới khi có việc cho executor: mission mới cần giao, hoặc yêu cầu dừng đang treo. + * @return false nếu bị đánh thức bởi @ref wakeUp (đang dừng), true nếu thật sự có việc. + * + * Thay cho vòng poll: mission layer không có deadline định kỳ nào, poll chỉ thêm độ trễ + * trung bình nửa chu kỳ vào đường phản ứng cancel/emergency. + */ + bool waitForWork(); + + /// @brief Đánh thức mọi thread đang chờ trong @ref waitForWork (dùng khi dừng executor). + void wakeUp(); + + private: + /// Gọi khi đã giữ mutex_. Ghi mission đang chạy vào ô pending-cancel rồi bỏ nó ra. + void requestCancelOfCurrentLocked(); + + /// Gọi khi đã giữ mutex_. Id mission đang chạy, kInvalidMissionId nếu không có. + MissionId currentIdLocked() const; + + /** + * Gọi khi đã giữ mutex_. Đổi trạng thái và ghi log ĐÚNG MỘT LẦN tại mỗi lần đổi thật. + * + * Đây là nơi duy nhất được gán state_: nếu không, mission biến mất khỏi hàng đợi mà không + * có dòng log nào cho biết ai đã làm điều đó và vì sao. + * + * @param reason Lý do ngắn gọn, cho người đọc log lúc 2 giờ sáng. + */ + void setStateLocked(MissionState next, const char* reason, MissionId id = kInvalidMissionId); + + /// Gọi khi đã giữ mutex_. true nếu executor có việc để làm ngay. + bool hasWorkLocked() const; + + /// Gọi khi đã giữ mutex_. true nếu đang có chặng chạy và mission_timeout được bật. + bool timeoutArmedLocked() const; + + /** + * Gọi khi đã giữ mutex_. Đánh dấu chặng đang chạy là thất bại do quá hạn, và ghi yêu cầu + * dừng navigation — khác NAV_FAILED ở chỗ navigation vẫn đang chạy nên phải bảo nó dừng. + */ + void expireCurrentLocked(); + + mutable std::mutex mutex_; + std::condition_variable work_cv_; + bool wake_requested_ = false; + MissionState state_ = MissionState::IDLE; + std::queue> mission_queue_; + std::shared_ptr current_mission_; + MissionId pending_cancel_ = kInvalidMissionId; + + /// Thời điểm chặng hiện tại được giao — mốc tính mission_timeout. + robot::Time mission_start_time_; + + MissionConfig config_; + MissionId next_mission_id_ = 1; ///< 0 dành riêng cho kInvalidMissionId + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_MISSION_MANAGER_H_ diff --git a/include/mission_adapters/mission_request.h b/include/mission_adapters/mission_request.h new file mode 100644 index 0000000..aaf5205 --- /dev/null +++ b/include/mission_adapters/mission_request.h @@ -0,0 +1,77 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Envelope cho payload đầu vào của mission layer. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_MISSION_REQUEST_H_ +#define MISSION_ADAPTERS_MISSION_REQUEST_H_ + +#include +#include + +#include +#include + +namespace mission_adapters +{ + /// @brief Tên schema của các nguồn có sẵn. Nguồn mới tự khai schema riêng, không cần sửa ở đây. + namespace schema + { + constexpr const char* kVda5050Order = "vda5050.order"; + constexpr const char* kPoseStamped = "geometry.pose_stamped"; + } // namespace schema + + /** + * @struct MissionRequest + * @brief Payload đầu vào cùng với tên schema mô tả nó. + * + * Hai nguồn hiện có nhận hai kiểu khác hẳn nhau (Order và PoseStamped) nên không thể có một + * convert() chung nếu không bọc lại. Core chỉ định tuyến theo @ref schema và không bao giờ cần + * biết kiểu thật; thêm nguồn mới = thêm schema mới + plugin mới. + * + * Payload có kiểu dùng cho nguồn nội bộ (tránh serialize thừa); nguồn ngoài (REST/MQTT/file) đi + * bằng @ref raw_payload và tự parse trong plugin của mình. + */ + struct MissionRequest + { + std::string schema; + + std::shared_ptr order; + std::shared_ptr pose; + + std::string raw_payload; + + /// @brief Dựng request từ một VDA5050 Order. + static MissionRequest fromOrder(const robot_protocol_msgs::Order& order) + { + MissionRequest request; + request.schema = schema::kVda5050Order; + request.order = std::make_shared(order); + return request; + } + + /// @brief Dựng request từ một goal đơn lẻ. + static MissionRequest fromPose(const robot_geometry_msgs::PoseStamped& pose) + { + MissionRequest request; + request.schema = schema::kPoseStamped; + request.pose = std::make_shared(pose); + return request; + } + + /// @brief Dựng request từ payload thô của một nguồn ngoài. + static MissionRequest fromRaw(const std::string& schema_name, const std::string& payload) + { + MissionRequest request; + request.schema = schema_name; + request.raw_payload = payload; + return request; + } + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_MISSION_REQUEST_H_ diff --git a/include/mission_adapters/navigation_client.h b/include/mission_adapters/navigation_client.h new file mode 100644 index 0000000..f490e03 --- /dev/null +++ b/include/mission_adapters/navigation_client.h @@ -0,0 +1,55 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Cổng ra phía navigation của mission layer. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_NAVIGATION_CLIENT_H_ +#define MISSION_ADAPTERS_NAVIGATION_CLIENT_H_ + +#include + +#include + +namespace mission_adapters +{ + /** + * @class NavigationClient + * @brief Đường duy nhất để mission layer điều khiển navigation. + * + * Gói này KHÔNG biết navigation runtime nào đang chạy phía sau: bridge phía runtime hiện thực + * interface này, test hiện thực bằng fake. Nhờ vậy chiều phụ thuộc luôn một chiều và mission + * layer test được mà không cần robot. + * + * Bất biến an toàn: mọi đường thoát của một mission — bị thay thế, bị huỷ, emergency — đều phải + * đi qua @ref cancelActive. Mission layer quên mission mà không bảo navigation dừng thì robot + * vẫn chạy tiếp tới goal cũ. + */ + class NavigationClient + { + public: + virtual ~NavigationClient() = default; + + /** + * @brief Giao một mission cho navigation chạy. + * @param mission Mission bất biến, luôn khác null. + * @return false nếu navigation từ chối (goal không hợp lệ, chưa initialize...). Khi đó + * mission layer ghi nhận chặng này thất bại thay vì chờ vô hạn. + */ + virtual bool dispatch(const std::shared_ptr& mission) = 0; + + /** + * @brief Yêu cầu dừng mission đang chạy. + * @param id Mission cần dừng — navigation bỏ qua nếu nó đã chạy sang mission khác. + * + * Kết quả cuối cùng vẫn quay về qua đường outcome bình thường (navDoneEvent / + * navFailedEvent mang cùng @p id), không phải qua giá trị trả về của hàm này. + */ + virtual void cancelActive(MissionId id) = 0; + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_NAVIGATION_CLIENT_H_ diff --git a/include/mission_adapters/plugin_registry.h b/include/mission_adapters/plugin_registry.h new file mode 100644 index 0000000..9fabf47 --- /dev/null +++ b/include/mission_adapters/plugin_registry.h @@ -0,0 +1,94 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Nạp và tra cứu MissionSourceAdapter theo schema. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_PLUGIN_REGISTRY_H_ +#define MISSION_ADAPTERS_PLUGIN_REGISTRY_H_ + +#include +#include +#include +#include + +#include + +#include + +namespace mission_adapters +{ + /** + * @class PluginRegistry + * @brief Bảng tra schema -> adapter, nạp từ YAML bằng Boost.DLL. + * + * Cấu hình mong đợi (xem `pnkx_nav_core/config/mission_adapters_params.yaml`): + * + * @code{.yaml} + * mission_adapters: + * mission_sources: + * - {name: goal_src, type: GoalSourceAdapter} + * - {name: vda5050_src, type: VDA5050SourceAdapter} + * + * GoalSourceAdapter: + * library_path: libmission_adapters_goal_source + * @endcode + * + * Khoá `library_path` là thứ hay bị quên nhất: thiếu nó thì plugin build xong vẫn báo "không + * tìm thấy" lúc chạy. Registry vì thế báo lỗi nêu đích danh khoá bị thiếu thay vì chỉ nói + * không nạp được. + */ + class PluginRegistry + { + public: + PluginRegistry() = default; + ~PluginRegistry(); + + PluginRegistry(const PluginRegistry&) = delete; + PluginRegistry& operator=(const PluginRegistry&) = delete; + + /** + * @brief Nạp toàn bộ nguồn khai trong `/mission_sources`. + * @param nh NodeHandle gốc. + * @param ns Namespace chứa danh sách nguồn. + * @return false nếu có bất kỳ nguồn nào không nạp được. Các nguồn còn lại vẫn được đăng ký, + * và mỗi lỗi được log kèm lý do cụ thể. + */ + bool loadFromConfig(robot::NodeHandle& nh, const std::string& ns = "mission_adapters"); + + /** + * @brief Đăng ký một adapter đã dựng sẵn (test, hoặc nguồn biên dịch thẳng vào host). + * @return false nếu adapter null, schema rỗng, hoặc schema đã có chủ. + */ + bool registerAdapter(const MissionSourceAdapter::Ptr& adapter); + + /// @brief Tìm adapter xử lý schema này. nullptr nếu không có. + MissionSourceAdapter* find(const std::string& schema) const; + + size_t size() const { return adapters_.size(); } + + /// @brief Danh sách schema đã đăng ký, dùng cho log và test. + std::vector schemas() const; + + void clear(); + + private: + /// Nạp một nguồn. Trả false kèm log lý do nếu hỏng ở bất kỳ bước nào. + bool loadOne(const std::string& name, const std::string& type, robot::NodeHandle& nh); + + std::map adapters_; + + /** + * Giữ factory của Boost.DLL sống đúng bằng vòng đời registry. + * + * Đây không phải biến thừa: factory nắm shared_library bên trong, thả nó ra là .so bị unload + * trong khi các adapter tạo từ nó vẫn còn sống — vtable trỏ vào vùng nhớ đã gỡ. + */ + std::vector> factories_; + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_PLUGIN_REGISTRY_H_ diff --git a/include/mission_adapters/types.h b/include/mission_adapters/types.h index e69de29..168f51b 100644 --- a/include/mission_adapters/types.h +++ b/include/mission_adapters/types.h @@ -0,0 +1,144 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Kiểu dữ liệu nền của mission layer: trạng thái, mission, action. + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_TYPES_H_ +#define MISSION_ADAPTERS_TYPES_H_ + +#include +#include +#include +#include +#include + +#include +#include + +namespace mission_adapters +{ + /** + * @brief Danh tính của một mission, do MissionManager cấp khi submit và đơn điệu tăng. + * + * Mọi kết quả từ phía navigation phải mang ID này. Không có nó thì outcome trễ của một mission + * đã bị thay thế sẽ được ghi nhận cho mission đang chạy — mission mới "hoàn thành" mà robot + * chưa hề đi. + */ + using MissionId = std::uint64_t; + + /// @brief Mission chưa được submit (hoặc không tồn tại). + static constexpr MissionId kInvalidMissionId = 0; + + /// @brief Trạng thái hàng đợi mission. Tại mỗi thời điểm robot chỉ ở đúng một trạng thái. + enum class MissionState + { + IDLE, + QUEUED, + RUNNING, + PAUSED, + COMPLETED, + FAILED, + CANCELLED, + EMERGENCY, + CLEAR_EMERGENCY + }; + + /// @brief Tên trạng thái, dùng cho log và cho host hiển thị. + const char* toString(MissionState state); + + /// @brief Nguồn gốc mission, quyết định cách consumer diễn giải nodes/edges. + enum class MissionType + { + SIMPLE_GOAL, + VDA5050_ORDER + }; + + /// @brief Action gắn với node (thực hiện tại chỗ) hay với edge (thực hiện dọc đường đi). + enum class ActionType + { + NODE_ACTION, + EDGE_ACTION + }; + + class Action + { + public: + int sequenceId = 0; + ActionType type = ActionType::NODE_ACTION; + robot_protocol_msgs::Action action; + }; + + /** + * @brief Một chặng việc self-contained mà navigation runtime có thể chạy trọn vẹn. + * + * @invariant Bất biến sau khi MissionManager::submit() gán @ref id: từ thời điểm đó mission chỉ + * được chia sẻ dưới dạng std::shared_ptr, nên ba thread (event, exec, + * navigation) đọc chung mà không cần khoá. + */ + class Mission + { + public: + MissionId id = kInvalidMissionId; ///< 0 cho tới khi submit; sau đó không đổi + MissionType type = MissionType::SIMPLE_GOAL; + + /** + * false = mission chỉ-có-action: navigation runtime bỏ qua phần di chuyển và vào thẳng + * thực thi action (D8). @ref start và @ref goal khi đó không mang ý nghĩa. + * + * @invariant has_goal == false thì @ref actions phải khác rỗng — mission không goal cũng + * không action là mission không có việc gì để làm. + */ + bool has_goal = true; + + robot_geometry_msgs::PoseStamped start; ///< chỉ hợp lệ khi has_goal + robot_geometry_msgs::PoseStamped goal; ///< chỉ hợp lệ khi has_goal + + std::vector nodes; + std::vector edges; + + /** + * Action của chặng, đã sắp theo sequenceId. + * + * Mission layer KHÔNG diễn giải `actionType` và không lọc gì — đó là việc của navigation + * runtime (D8). Ở đây chúng chỉ đi qua nguyên vẹn, đúng thứ tự. + */ + std::vector actions; + + /** + * Profile navigation hiệu lực của chặng có goal: `"position"`, `"docking"`, + * `"go_straight"` hoặc `"rotate"`. Mission chỉ-action phải để rỗng. Adapter hiện tại + * luôn ghi `"position"` rõ ràng cho chặng nav thường để trace/runtime biết chính xác + * planner nào sẽ được chọn; bridge vẫn chấp nhận rỗng như `position` để tương thích output + * cũ. + * + * Là **chuỗi** chứ không phải enum, và mission layer **không diễn giải** nó — cùng quy tắc + * với @ref actions. Mission layer không được biết tới navigation nên không có kiểu nào để + * diễn tả "profile"; lớp nối phía navigation mới dịch chuỗi này sang khái niệm của mình. + */ + std::string motion_hint; + + /** + * Marker chọn cặp planner docking. Rỗng hoặc không có override cấu hình thì navigation + * dùng profile docking mặc định. Đây không phải goal_frame: marker là khoá cấu hình, còn + * goal_frame là frame TF được resolve khi chặng bắt đầu. + */ + std::string marker; + + /** + * Đích lấy từ TF frame này thay vì từ @ref goal. Rỗng = dùng @ref goal. + * + * Chặng dò-rồi-tiến-vào không biết đích lúc được sinh ra: bước dò phía trước tạo ra frame + * này, và navigation tra nó tại thời điểm chặng được nhận. + */ + std::string goal_frame; + + /// Quãng đường tương đối [m] so với pose hiện tại; dương = tiến, âm = lùi. NaN = không dùng. + double relative_distance = std::numeric_limits::quiet_NaN(); + }; + +} // namespace mission_adapters + +#endif // MISSION_ADAPTERS_TYPES_H_ diff --git a/package.xml b/package.xml index 16f2806..7e98e01 100644 --- a/package.xml +++ b/package.xml @@ -1,51 +1,41 @@ mission_adapters - 0.7.10 + 0.2.0 - mission_adapters is the second generation of the transform library, which lets - the user keep track of multiple coordinate frames over time. mission_adapters - maintains the relationship between coordinate frames in a tree - structure buffered in time, and lets the user transform points, - vectors, etc between any two coordinate frames at any desired - point in time. + Lớp mission độc lập ROS: nhận yêu cầu từ nguồn ngoài (goal đơn lẻ, VDA5050 Order), chuyển thành + hàng đợi mission, và giữ trạng thái của hàng đợi đó qua một event bus có thread riêng. + + Gói không biết navigation runtime nào đang chạy phía sau — mission được đẩy xuống qua cổng + NavigationClient, kết quả quay về theo MissionId. Nhờ vậy cùng một lớp mission dùng được cho + nhiều runtime khác nhau và test được mà không cần robot. + + Nguồn mission là plugin nạp bằng Boost.DLL theo khoá library_path trong YAML, giống phần còn lại + của workspace; thêm một loại nguồn mới không phải sửa core. - Tully Foote - Eitan Marder-Eppstein - Wim Meeussen - Tully Foote + DuongTD + DuongTD BSD - http://www.ros.org/wiki/mission_adapters - catkin - libconsole-bridge-dev - libconsole-bridge-dev - - robot_costmap_2d - robot_nav_core - robot_nav_core2 - robot_nav_msgs - robot_std_msgs - robot_geometry_msgs robot_cpp - tf3 - robot_tf3_geometry_msgs - robot_visualization_msgs - robot_nav_2d_utils - data_convert - - robot_costmap_2d - robot_nav_core - robot_nav_core2 - robot_nav_msgs - robot_std_msgs - robot_geometry_msgs robot_cpp - tf3 - robot_tf3_geometry_msgs - robot_visualization_msgs - robot_nav_2d_utils - data_convert + + robot_time + robot_time + + robot_geometry_msgs + robot_geometry_msgs + + + robot_protocol_msgs + robot_protocol_msgs + + robot_std_msgs + robot_std_msgs + + yaml-cpp + yaml-cpp + gtest - \ No newline at end of file + diff --git a/plugins/goal_source_adapter.cpp b/plugins/goal_source_adapter.cpp new file mode 100644 index 0000000..4f58ab1 --- /dev/null +++ b/plugins/goal_source_adapter.cpp @@ -0,0 +1,91 @@ +#include "goal_source_adapter.h" + +#include + +#include + +namespace mission_plugins +{ + +mission_adapters::MissionSourceAdapter::Ptr GoalSourceAdapter::create() +{ + return std::make_shared(); +} + +bool GoalSourceAdapter::configure(const std::string& name, robot::NodeHandle& nh) +{ + (void)nh; // nguồn này chưa có param riêng + name_ = name; + return true; +} + +std::string GoalSourceAdapter::schema() const +{ + return mission_adapters::schema::kPoseStamped; +} + +bool GoalSourceAdapter::validate(const mission_adapters::MissionRequest& request, + std::string& reason) const +{ + if (!request.pose) + { + reason = "request is missing the pose payload"; + return false; + } + + const auto& position = request.pose->pose.position; + const auto& orientation = request.pose->pose.orientation; + + // NaN/Inf từ host phải bị chặn ngay tại biên: lọt xuống dưới thì mọi phép so khoảng cách tới + // goal đều trả false và robot chạy tới khi có người bấm dừng. + if (!std::isfinite(position.x) || !std::isfinite(position.y) || !std::isfinite(position.z)) + { + reason = "goal contains NaN/Inf in position"; + return false; + } + + if (!std::isfinite(orientation.x) || !std::isfinite(orientation.y) || + !std::isfinite(orientation.z) || !std::isfinite(orientation.w)) + { + reason = "goal contains NaN/Inf in orientation"; + return false; + } + + // Quaternion toàn 0 là lỗi hay gặp khi host quên set orientation — nó không phải "hướng bất kỳ", + // nó là dữ liệu hỏng. + const double norm_squared = orientation.x * orientation.x + + orientation.y * orientation.y + + orientation.z * orientation.z + + orientation.w * orientation.w; + + if (std::sqrt(norm_squared) < kMinQuaternionNorm) + { + reason = "goal has a quaternion that cannot be normalized (norm ~ 0)"; + return false; + } + + return true; +} + +mission_adapters::ConversionResult +GoalSourceAdapter::convert(const mission_adapters::MissionRequest& request) +{ + mission_adapters::ConversionResult result; + + if (!request.pose) + return result; + + auto mission = std::make_shared(); + mission->type = mission_adapters::MissionType::SIMPLE_GOAL; + mission->goal = *request.pose; + mission->motion_hint = "position"; + + // Goal đơn lẻ luôn thay việc đang chạy: người dùng bấm một đích mới nghĩa là bỏ đích cũ. + result.mode = mission_adapters::SubmitMode::kReplace; + result.missions.push_back(mission); + return result; +} + +} // namespace mission_plugins + +BOOST_DLL_ALIAS(mission_plugins::GoalSourceAdapter::create, GoalSourceAdapter) diff --git a/plugins/goal_source_adapter.h b/plugins/goal_source_adapter.h new file mode 100644 index 0000000..a2ac091 --- /dev/null +++ b/plugins/goal_source_adapter.h @@ -0,0 +1,55 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Nguồn mission từ một goal đơn lẻ (schema "geometry.pose_stamped"). + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_PLUGINS_GOAL_SOURCE_ADAPTER_H_ +#define MISSION_ADAPTERS_PLUGINS_GOAL_SOURCE_ADAPTER_H_ + +#include +#include +#include + +#include + +#include + +namespace mission_plugins +{ + +/** + * @class GoalSourceAdapter + * @brief Goal đơn lẻ từ host -> đúng một mission. + * + * Không có state giữa các lần gọi, nhưng vẫn không dùng biến static: một tiến trình có thể chạy + * nhiều instance (nhiều robot mô phỏng) và state static sẽ nối chúng lại với nhau. + */ +class GoalSourceAdapter : public mission_adapters::MissionSourceAdapter +{ +public: + /// @brief Factory được PluginRegistry nạp qua boost::dll::import_alias. + static mission_adapters::MissionSourceAdapter::Ptr create(); + + bool configure(const std::string& name, robot::NodeHandle& nh) override; + + std::string schema() const override; + + bool validate(const mission_adapters::MissionRequest& request, + std::string& reason) const override; + + mission_adapters::ConversionResult + convert(const mission_adapters::MissionRequest& request) override; + +private: + /// Dưới ngưỡng này thì quaternion coi như không mang hướng nào. [không đơn vị] + static constexpr double kMinQuaternionNorm = 1e-6; + + std::string name_; +}; + +} // namespace mission_plugins + +#endif // MISSION_ADAPTERS_PLUGINS_GOAL_SOURCE_ADAPTER_H_ diff --git a/plugins/vda5050_source_adapter.cpp b/plugins/vda5050_source_adapter.cpp new file mode 100644 index 0000000..9c3a325 --- /dev/null +++ b/plugins/vda5050_source_adapter.cpp @@ -0,0 +1,577 @@ +#include "vda5050_source_adapter.h" + +#include +#include +#include +#include + +#include + +#include + +#include + +namespace mission_plugins +{ +namespace +{ +bool isNavigationProfile(const std::string& profile) +{ + return profile.empty() || profile == "position" || profile == "docking" || + profile == "go_straight" || profile == "rotate"; +} + + using mission_adapters::Action; + using mission_adapters::ActionType; + using mission_adapters::ConversionResult; + using mission_adapters::Mission; + using mission_adapters::MissionType; + using mission_adapters::SubmitMode; + + /// Gom action của edge và của node cuối vào mission, sắp theo sequenceId của VDA5050. + void collectActions(const std::shared_ptr& mission) + { + for (const auto& edge : mission->edges) + { + for (const auto& action : edge.actions) + { + Action ma; + ma.sequenceId = edge.sequenceId; + ma.type = ActionType::EDGE_ACTION; + ma.action = action; + mission->actions.push_back(std::move(ma)); + } + } + + if (!mission->nodes.empty()) + { + const auto& node = mission->nodes.back(); + for (const auto& action : node.actions) + { + Action ma; + ma.sequenceId = node.sequenceId; + ma.type = ActionType::NODE_ACTION; + ma.action = action; + mission->actions.push_back(std::move(ma)); + } + } + + // stable_sort chứ không sort: `sequenceId` ở đây là của NODE/EDGE sở hữu action, nên mọi + // action trên cùng một node có khoá BẰNG NHAU. Với khoá bằng nhau, std::sort không bảo đảm + // giữ thứ tự — mà thứ tự đó chính là thứ tự trong mảng JSON, thứ VDA5050 quy định là thứ tự + // thực hiện. Bản cũ chạy đúng chỉ nhờ libstdc++ dùng insertion sort cho dải nhỏ. + std::stable_sort(mission->actions.begin(), mission->actions.end(), + [](const Action& a, const Action& b) { + return a.sequenceId < b.sequenceId; + }); + } + +} // namespace + +mission_adapters::MissionSourceAdapter::Ptr VDA5050SourceAdapter::create() +{ + return std::make_shared(); +} + +bool VDA5050SourceAdapter::configure(const std::string& name, robot::NodeHandle& nh) +{ + name_ = name; + + nh.getParam(name + "/global_frame", global_frame_, std::string("map")); + if (global_frame_.empty()) + { + robot::log_error("VDA5050SourceAdapter[%s]: global_frame is empty", name.c_str()); + return false; + } + + if (!loadCompoundActions(name, nh)) + return false; + + last_order_id_.clear(); + last_order_update_id_ = 0; + converted_node_count_ = 0; + return true; +} + +bool VDA5050SourceAdapter::loadCompoundActions(const std::string& name, robot::NodeHandle& nh) +{ + compound_actions_.clear(); + + YAML::Node table; + if (!nh.getParam(name + "/compound_actions", table) || !table.IsMap()) + return true; // Không khai bảng là hợp lệ: adapter chạy y như trước. + + for (auto entry = table.begin(); entry != table.end(); ++entry) + { + const std::string action_type = entry->first.as(); + const YAML::Node& steps_node = entry->second["steps"]; + + if (action_type.empty() || !steps_node || !steps_node.IsSequence() || steps_node.size() == 0) + { + robot::log_error("VDA5050SourceAdapter[%s]: compound action '%s' has no 'steps' list", + name.c_str(), action_type.c_str()); + return false; + } + + Steps steps; + for (std::size_t i = 0; i < steps_node.size(); ++i) + { + const YAML::Node& n = steps_node[i]; + Step step; + + try + { + if (n["action"]) step.action = n["action"].as(); + if (n["move_to"]) step.move_to = n["move_to"].as(); + if (n["move_to_param"]) step.move_to_param = n["move_to_param"].as(); + if (n["move"]) step.move = n["move"].as(); + if (n["profile"]) step.motion_hint = n["profile"].as(); + if (n["marker"]) step.marker = n["marker"].as(); + } + catch (const YAML::Exception& ex) + { + robot::log_error("VDA5050SourceAdapter[%s]: '%s' step %zu is malformed: %s", + name.c_str(), action_type.c_str(), i, ex.what()); + return false; + } + + const int keys = (step.action.empty() ? 0 : 1) + (step.move_to.empty() ? 0 : 1) + + (step.move_to_param.empty() ? 0 : 1) + + (std::isfinite(step.move) ? 1 : 0); + if (keys != 1) + { + // Không đúng một từ khoá thì không có cách diễn giải nào là hiển nhiên đúng. Chặn ở + // boot thay vì đoán lúc order đầu tiên tới. + robot::log_error("VDA5050SourceAdapter[%s]: '%s' step %zu must have exactly one of " + "action / move_to / move_to_param / move (found %d)", + name.c_str(), action_type.c_str(), i, keys); + return false; + } + + if (!isNavigationProfile(step.motion_hint)) + { + robot::log_error("VDA5050SourceAdapter[%s]: '%s' step %zu has invalid profile '%s'", + name.c_str(), action_type.c_str(), i, step.motion_hint.c_str()); + return false; + } + if (!step.action.empty() && !step.motion_hint.empty()) + { + robot::log_error("VDA5050SourceAdapter[%s]: '%s' step %zu is action-only and must " + "not set profile", + name.c_str(), action_type.c_str(), i); + return false; + } + if (!step.marker.empty() && step.motion_hint != "docking") + { + robot::log_error("VDA5050SourceAdapter[%s]: '%s' step %zu sets marker but is not " + "a docking navigation step", + name.c_str(), action_type.c_str(), i); + return false; + } + + steps.push_back(step); + } + + compound_actions_[action_type] = std::move(steps); + } + + // Chống đệ quy: một step sinh ra actionType mà chính nó cũng là compound thì expander sẽ mở rộng + // output của mình — vòng lặp vô hạn lúc convert. + for (const auto& entry : compound_actions_) + { + for (const Step& step : entry.second) + { + if (!step.action.empty() && compound_actions_.count(step.action) != 0) + { + robot::log_error("VDA5050SourceAdapter[%s]: compound '%s' emits '%s' which is itself " + "a compound action — that would recurse", + name.c_str(), entry.first.c_str(), step.action.c_str()); + return false; + } + } + } + + robot::log_info("VDA5050SourceAdapter[%s]: %zu compound action(s) loaded", name.c_str(), + compound_actions_.size()); + return true; +} + +const VDA5050SourceAdapter::Steps* +VDA5050SourceAdapter::findCompound(const std::string& action_type) const +{ + const auto it = compound_actions_.find(action_type); + return it == compound_actions_.end() ? nullptr : &it->second; +} + +std::string VDA5050SourceAdapter::schema() const +{ + return mission_adapters::schema::kVda5050Order; +} + +size_t VDA5050SourceAdapter::countReleasedNodes(const robot_protocol_msgs::Order& order) +{ + // VDA5050: base là tiền tố của danh sách node — dừng ở node đầu tiên chưa release. + size_t count = 0; + while (count < order.nodes.size() && order.nodes[count].released) + ++count; + + return count; +} + +size_t VDA5050SourceAdapter::countReleasedEdges(const robot_protocol_msgs::Order& order, + size_t released_node_count) +{ + if (released_node_count < 2) + return 0; + + size_t count = 0; + const size_t limit = std::min(order.edges.size(), released_node_count - 1); + while (count < limit && order.edges[count].released) + ++count; + + return count; +} + +size_t VDA5050SourceAdapter::executableNodeCount(const robot_protocol_msgs::Order& order) const +{ + const size_t released = countReleasedNodes(order); + if (released > 0) + return released; + + // Không node nào released. Theo VDA5050 order phải có ít nhất một base node, nên trường hợp này + // gần như luôn là host không điền `released`. Coi cả order là base — im lặng không chạy gì sẽ + // khiến fleet manager chờ vô hạn mà không có dấu hiệu nào. + robot::log_warning("VDA5050SourceAdapter[%s]: order '%s' has no released node — treating the " + "whole order as base (did the host leave the 'released' field out?)", + name_.c_str(), order.orderId.c_str()); + return order.nodes.size(); +} + +robot_geometry_msgs::PoseStamped +VDA5050SourceAdapter::toPose(const robot_protocol_msgs::Node& node) const +{ + robot_geometry_msgs::PoseStamped pose; + pose.header.frame_id = global_frame_; + pose.pose.position.x = node.nodePosition.x; // [m] + pose.pose.position.y = node.nodePosition.y; // [m] + pose.pose.position.z = 0.0; + + // theta [rad] quanh trục z -> quaternion. + const double half_theta = 0.5 * node.nodePosition.theta; + pose.pose.orientation.x = 0.0; + pose.pose.orientation.y = 0.0; + pose.pose.orientation.z = std::sin(half_theta); + pose.pose.orientation.w = std::cos(half_theta); + + return pose; +} + +bool VDA5050SourceAdapter::validate(const mission_adapters::MissionRequest& request, + std::string& reason) const +{ + if (!request.order) + { + reason = "request is missing the order payload"; + return false; + } + + const auto& order = *request.order; + + if (order.nodes.empty()) + { + reason = "order has no node"; + return false; + } + + // VDA5050: n node liên thông cần đúng n-1 edge. Thiếu edge nghĩa là đồ thị đứt đoạn, cắt chặng + // theo chỉ số sẽ lấy nhầm edge của đoạn khác. + if (order.nodes.size() > 1 && order.edges.size() < order.nodes.size() - 1) + { + reason = "fewer edges than nodes - 1"; + return false; + } + + for (const auto& node : order.nodes) + { + if (!std::isfinite(node.nodePosition.x) || !std::isfinite(node.nodePosition.y) || + !std::isfinite(node.nodePosition.theta)) + { + reason = "nodePosition contains NaN/Inf at node '" + node.nodeId + "'"; + return false; + } + } + + // Bản cập nhật cũ hơn (hoặc phát lại) của order đang chạy: từ chối thay vì chạy lại tuyến đường. + if (!order.orderId.empty() && order.orderId == last_order_id_ && + order.orderUpdateId <= last_order_update_id_) + { + reason = "orderUpdateId " + std::to_string(order.orderUpdateId) + + " is not newer than the running one (" + std::to_string(last_order_update_id_) + ")"; + return false; + } + + return true; +} + + +bool VDA5050SourceAdapter::expandCompound( + const std::shared_ptr& leg, + std::vector>& out) const +{ + if (compound_actions_.empty() || leg->actions.empty()) + return true; // Không có gì để mở rộng — đường đi thường. + + std::vector buffer; // action thường đang chờ xả + std::vector on_the_leg; // bộ đệm ĐẦU TIÊN: ở lại trên chặng nav + bool first_flush = true; + bool expanded_any = false; + + // Chặng chỉ-action sinh ra từ bộ đệm sau lần xả đầu. + auto flush = [&](void) { + if (buffer.empty()) + return; + if (first_flush) + { + on_the_leg = buffer; + } + else + { + auto extra = std::make_shared(); + extra->type = MissionType::VDA5050_ORDER; + extra->has_goal = false; + extra->actions = buffer; + out.push_back(std::move(extra)); + } + buffer.clear(); + }; + + for (const Action& entry : leg->actions) + { + // Compound chỉ áp cho NODE_ACTION: một chuỗi dò-rồi-tiến-vào không có nghĩa khi gắn vào một + // cạnh mà robot đang đi trên đó. + const Steps* steps = (entry.type == ActionType::NODE_ACTION) + ? findCompound(entry.action.actionType) + : nullptr; + + if (steps == nullptr) + { + if (entry.type == ActionType::EDGE_ACTION && + findCompound(entry.action.actionType) != nullptr) + { + robot::log_warning("VDA5050SourceAdapter[%s]: '%s' is a compound action but sits on " + "an EDGE — running it as a plain action", + name_.c_str(), entry.action.actionType.c_str()); + } + buffer.push_back(entry); + continue; + } + + flush(); + first_flush = false; + expanded_any = true; + + for (const Step& step : *steps) + { + auto sub = std::make_shared(); + sub->type = MissionType::VDA5050_ORDER; + + if (!step.action.empty()) + { + // Action nội bộ: mang NGUYÊN actionParameters của action gốc — handler cần biết dò + // trạm nào, và nó là chỗ duy nhất hiểu ý nghĩa các tham số đó. + Action generated; + generated.type = ActionType::NODE_ACTION; + generated.sequenceId = entry.sequenceId; + generated.action = entry.action; + generated.action.actionType = step.action; + generated.action.actionId = entry.action.actionId + "-" + step.action; + + sub->has_goal = false; + sub->actions.push_back(std::move(generated)); + } + else + { + sub->has_goal = true; + // Mission nav luôn tự mô tả profile hiệu lực. Action-only giữ chuỗi rỗng để không + // bao giờ bị hiểu nhầm là một yêu cầu điều khiển. + sub->motion_hint = step.motion_hint.empty() ? "position" : step.motion_hint; + sub->marker = step.marker; + sub->start = leg->start; + sub->goal = leg->goal; // chỗ dựa; đích thật đến muộn qua goal_frame/relative_distance + + if (!step.move_to.empty()) + { + sub->goal_frame = step.move_to; + } + else if (!step.move_to_param.empty()) + { + // Thay thế xảy ra tại CONVERT: runtime không bao giờ thấy placeholder, và thiếu + // tham số thì order bị từ chối trước khi robot nhúc nhích. + const auto it = std::find_if( + entry.action.actionParameters.begin(), entry.action.actionParameters.end(), + [&step](const robot_protocol_msgs::ActionParameter& p) { + return p.key == step.move_to_param; + }); + + if (it == entry.action.actionParameters.end() || it->value.empty()) + { + robot::log_error("VDA5050SourceAdapter[%s]: compound action '%s' (actionId " + "'%s') requires parameter '%s' but it is missing", + name_.c_str(), entry.action.actionType.c_str(), + entry.action.actionId.c_str(), step.move_to_param.c_str()); + return false; + } + sub->goal_frame = it->value; + } + else + { + sub->relative_distance = step.move; + } + } + + out.push_back(std::move(sub)); + } + } + + flush(); + + if (expanded_any) + leg->actions = on_the_leg; + + return true; +} + +ConversionResult VDA5050SourceAdapter::convert(const mission_adapters::MissionRequest& request) +{ + ConversionResult result; + + std::string reason; + if (!validate(request, reason)) + { + robot::log_warning("VDA5050SourceAdapter[%s]: dropping the order — %s", name_.c_str(), + reason.c_str()); + return result; + } + + const auto& order = *request.order; + + const size_t node_count = executableNodeCount(order); + const size_t edge_count = (countReleasedNodes(order) > 0) + ? countReleasedEdges(order, node_count) + : order.edges.size(); + + // Order update của đúng order đang chạy: chỉ sinh phần vừa được release thêm. + const bool is_update = !order.orderId.empty() && order.orderId == last_order_id_; + + size_t start_node_idx = 0; + if (is_update) + { + if (converted_node_count_ >= node_count) + { + robot::log_info("VDA5050SourceAdapter[%s]: order '%s' update %u released no further " + "node — there is no new work", + name_.c_str(), order.orderId.c_str(), + static_cast(order.orderUpdateId)); + + last_order_update_id_ = order.orderUpdateId; + return result; + } + + // Node cuối đã chuyển đổi trở thành node xuất phát của chặng tiếp theo. + start_node_idx = converted_node_count_ - 1; + result.mode = SubmitMode::kAppend; + } + + // Chặng được cắt tại mỗi node có action: robot chạy tới node đó rồi mới thực hiện action. + std::vector action_node_indices; + for (size_t i = start_node_idx + 1; i < node_count; ++i) + { + if (!order.nodes[i].actions.empty()) + action_node_indices.push_back(i); + } + + // Node xuất phát có action (và chưa từng được chuyển đổi) cũng là một chặng — chặng chỉ-action. + if (!is_update && !order.nodes[start_node_idx].actions.empty()) + action_node_indices.insert(action_node_indices.begin(), start_node_idx); + + auto makeMission = [&](size_t from, size_t to) { + auto mission = std::make_shared(); + mission->type = MissionType::VDA5050_ORDER; + + mission->nodes.assign(order.nodes.begin() + from, order.nodes.begin() + to + 1); + + if (to > from) + { + const size_t edge_to = std::min(to, edge_count); + if (from < edge_to) + mission->edges.assign(order.edges.begin() + from, order.edges.begin() + edge_to); + } + + // D8: chặng một node là chặng chỉ-có-action (action nằm ngay tại node xuất phát) — không có + // quãng đường nào để đi. Quy tắc thuần cấu trúc, adapter không cần biết robot đang ở đâu. + mission->has_goal = (to > from); + + if (mission->has_goal) + { + // Mission self-contained: consumer không phải suy goal ra từ nodes (A4). + mission->start = toPose(order.nodes[from]); + mission->goal = toPose(order.nodes[to]); + mission->motion_hint = "position"; + } + + collectActions(mission); + return mission; + }; + + // Mission không goal mà cũng không action là mission rỗng — không sinh ra nó. + auto isMeaningful = [](const std::shared_ptr& mission) { + return mission->has_goal || !mission->actions.empty(); + }; + + size_t segment_start = start_node_idx; + + for (const size_t action_node_idx : action_node_indices) + { + auto mission = makeMission(segment_start, action_node_idx); + + // Mở rộng TRƯỚC isMeaningful: hàm này gỡ action compound khỏi chặng, và một chặng chỉ-action + // sau khi gỡ có thể trở thành rỗng. + std::vector> expanded; + if (!expandCompound(mission, expanded)) + { + // Thiếu tham số cấu trúc: bỏ CẢ order. Một order chạy nửa vời — robot tới trạm sạc rồi + // không sạc — nguy hiểm hơn là không chạy. + result.missions.clear(); + return result; + } + + if (isMeaningful(mission)) + result.missions.push_back(std::move(mission)); + + for (auto& sub : expanded) + result.missions.push_back(std::move(sub)); + + segment_start = action_node_idx; + } + + // Đoạn còn lại sau node có action cuối cùng. + if (segment_start + 1 < node_count) + { + auto mission = makeMission(segment_start, node_count - 1); + if (isMeaningful(mission)) + result.missions.push_back(std::move(mission)); + } + + if (result.missions.empty()) + return result; + + last_order_id_ = order.orderId; + last_order_update_id_ = order.orderUpdateId; + converted_node_count_ = node_count; + + return result; +} + +} // namespace mission_plugins + +BOOST_DLL_ALIAS(mission_plugins::VDA5050SourceAdapter::create, VDA5050SourceAdapter) diff --git a/plugins/vda5050_source_adapter.h b/plugins/vda5050_source_adapter.h new file mode 100644 index 0000000..6f0a8e9 --- /dev/null +++ b/plugins/vda5050_source_adapter.h @@ -0,0 +1,146 @@ +/********************************************************************* + * + * Software License Agreement (BSD License) + * + * Nguồn mission từ VDA5050 Order (schema "vda5050.order"). + * + * Author: DuongTD + *********************************************************************/ +#ifndef MISSION_ADAPTERS_PLUGINS_VDA5050_SOURCE_ADAPTER_H_ +#define MISSION_ADAPTERS_PLUGINS_VDA5050_SOURCE_ADAPTER_H_ + +#include +#include +#include +#include +#include +#include +#include + +#include + +#include + +namespace mission_plugins +{ + +/** + * @class VDA5050SourceAdapter + * @brief Cắt một VDA5050 Order thành các chặng, mỗi chặng kết thúc tại một node có action. + * + * Ba điểm conformance mà adapter này chịu trách nhiệm: + * + * 1. **base / horizon** — chỉ phần `released == true` được thực thi. Horizon là dự định của fleet + * manager, chưa được phép chạy; robot đi vào đó là đi vào đoạn đường chưa ai cho phép. + * 2. **orderId / orderUpdateId** — phân biệt yêu cầu MỚI (thay hàng đợi) với bản CẬP NHẬT của yêu + * cầu đang chạy (nối tiếp). Nhầm hai thứ này thì mỗi lần fleet manager release thêm horizon, + * robot lại huỷ và chạy lại chặng đang đi. + * 3. **goal / start self-contained** — mission mang sẵn pose đích, consumer không phải tự đoán từ + * `nodes.back()`. + * + * State là member, không phải static local: nhiều instance trong cùng tiến trình không được nhìn + * thấy order của nhau. + */ +class VDA5050SourceAdapter : public mission_adapters::MissionSourceAdapter +{ +public: + /// @brief Factory được PluginRegistry nạp qua boost::dll::import_alias. + static mission_adapters::MissionSourceAdapter::Ptr create(); + + /** + * @brief Đọc param riêng của instance. + * + * Param (namespace ``): + * - `global_frame` [string, mặc định "map"]: frame gán cho pose sinh ra từ nodePosition. + * - `compound_actions` [map, optional]: action "phải dò rồi mới biết đích" — xem @ref Step. + */ + bool configure(const std::string& name, robot::NodeHandle& nh) override; + + std::string schema() const override; + + bool validate(const mission_adapters::MissionRequest& request, + std::string& reason) const override; + + mission_adapters::ConversionResult + convert(const mission_adapters::MissionRequest& request) override; + +private: + /** + * @struct Step + * @brief Một bước trong chuỗi mở rộng của compound action. + * + * Engine hiểu đúng bốn từ khoá và **không biết** `charge`, `dock_target` hay `LiftFork` nghĩa là + * gì — đó là điều kiện để cùng một engine dùng lại cho model robot khác: thêm model = thêm YAML + * + một `.so` handler, không sửa dòng nào ở đây. + * + * Mỗi step phải có ĐÚNG MỘT trong bốn khoá đầu; sai cú pháp thì `configure()` từ chối lúc **boot**. + */ + struct Step + { + std::string action; ///< `action: ` -> chặng chỉ-action + std::string move_to; ///< `move_to: ` -> chặng nav, frame cố định + std::string move_to_param; ///< `move_to_param: `-> frame lấy từ actionParameters + double move = std::numeric_limits::quiet_NaN(); ///< `move: ` tương đối + + std::string motion_hint; ///< `profile:` -> position | docking | go_straight | rotate + std::string marker; ///< `marker:` -> khoá override planner, chỉ hợp lệ với docking + }; + + /// @brief Chuỗi chặng thay cho một action. Bảng chỉ giữ CẤU TRÚC, dữ liệu tới từ order. + using Steps = std::vector; + + /// @brief Nạp bảng `compound_actions`. Trả false nếu bảng có mà khai sai — lỗi nổ lúc boot. + bool loadCompoundActions(const std::string& name, robot::NodeHandle& nh); + + /// @brief Tra bảng theo actionType. nullptr nếu là action thường. + const Steps* findCompound(const std::string& action_type) const; + + /** + * @brief Mở rộng action của một chặng thành chuỗi chặng, giữ nguyên thứ tự mảng JSON. + * @param leg Chặng nav tới node; action compound sẽ được GỠ khỏi nó. + * @param out Nơi nối thêm chặng sinh ra. + * @return false nếu thiếu tham số cấu trúc — bên gọi phải bỏ CẢ order. + * + * Action thường tích vào bộ đệm; gặp compound thì xả bộ đệm rồi phát chuỗi. Bộ đệm ĐẦU TIÊN nằm + * lại trên chặng nav, các bộ đệm sau thành chặng chỉ-action. Nhờ vậy `[MutedOn, charge, MutedOff]` + * cho ra `MutedOff` **sau** chuỗi charge — gom hết vào chặng nav sẽ bật lại cảm biến an toàn + * trước khi robot lùi vào trạm. + */ + bool expandCompound(const std::shared_ptr& leg, + std::vector>& out) const; + + /// Số node đầu tiên có released == true. 0 nghĩa là không node nào được release. + static size_t countReleasedNodes(const robot_protocol_msgs::Order& order); + + /// Số edge thuộc phần base, không vượt quá `released_node_count - 1`. + static size_t countReleasedEdges(const robot_protocol_msgs::Order& order, + size_t released_node_count); + + /** + * @brief Phần order được phép thực thi. + * @return số node base; 0 nếu order không dùng trường `released` (xem ghi chú trong .cpp). + */ + size_t executableNodeCount(const robot_protocol_msgs::Order& order) const; + + /// Dựng PoseStamped từ nodePosition (theta [rad] -> quaternion quanh trục z). + robot_geometry_msgs::PoseStamped toPose(const robot_protocol_msgs::Node& node) const; + + std::string name_; + + /// Frame gán cho goal/start. VDA5050 `mapId` là danh tính bản đồ, KHÔNG phải frame TF. + std::string global_frame_ = "map"; + + /// actionType -> chuỗi chặng. Rỗng = không action nào cần mở rộng, adapter chạy như trước. + std::map compound_actions_; + + /// Order đang chạy — dùng để nhận ra order update so với order mới. + std::string last_order_id_; + std::uint32_t last_order_update_id_ = 0; + + /// Số node base đã chuyển đổi của order đang chạy; điểm bắt đầu cho phần release thêm. + size_t converted_node_count_ = 0; +}; + +} // namespace mission_plugins + +#endif // MISSION_ADAPTERS_PLUGINS_VDA5050_SOURCE_ADAPTER_H_ diff --git a/src/event.cpp b/src/event.cpp new file mode 100644 index 0000000..4bbcdf0 --- /dev/null +++ b/src/event.cpp @@ -0,0 +1,71 @@ +#include + +#include + +namespace mission_adapters +{ + // ───────────────────────────────────────────────────────────────────────── + // EventBus + // ───────────────────────────────────────────────────────────────────────── + + void EventBus::push(Event event) + { + { + std::lock_guard lock(mutex_); + event.sequence = next_sequence_++; + queue_.push(std::move(event)); + } + cv_.notify_one(); + } + + void EventBus::pushEmergency(Event event) + { + // Bật cờ TRƯỚC khi xếp hàng: bên tiêu thụ thấy được emergency ngay cả khi nó đang bận xử lý + // một sự kiện khác và chưa quay lại hàng đợi. + emergency_pending_.store(true, std::memory_order_release); + push(std::move(event)); + } + + bool EventBus::pop(Event& event) + { + std::unique_lock lock(mutex_); + cv_.wait(lock, [this] { return stop_ || !queue_.empty(); }); + + if (stop_ || queue_.empty()) return false; + + event = std::move(queue_.front()); + queue_.pop(); + return true; + } + + bool EventBus::takeEmergency() + { + return emergency_pending_.exchange(false, std::memory_order_acq_rel); + } + + bool EventBus::emergencyPending() const + { + return emergency_pending_.load(std::memory_order_acquire); + } + + void EventBus::stop() + { + { + std::lock_guard lock(mutex_); + stop_ = true; + } + cv_.notify_all(); + } + + void EventBus::reset() + { + { + std::lock_guard lock(mutex_); + stop_ = false; + next_sequence_ = 0; + queue_ = {}; + } + emergency_pending_.store(false, std::memory_order_release); + } + +} // namespace mission_adapters diff --git a/src/event_processor.cpp b/src/event_processor.cpp new file mode 100644 index 0000000..d8e9462 --- /dev/null +++ b/src/event_processor.cpp @@ -0,0 +1,214 @@ +#include + +#include + +#include + +namespace mission_adapters +{ + // ───────────────────────────────────────────────────────────────────────── + // EventProcessor + // ───────────────────────────────────────────────────────────────────────── + + EventProcessor::EventProcessor(MissionManager& mission_manager, PluginRegistry& registry) + : mission_manager_(mission_manager) + , registry_(registry) + {} + + EventProcessor::~EventProcessor() { stop(); } + + void EventProcessor::start() + { + if (running_) return; + running_ = true; + event_bus_.reset(); + worker_ = std::thread(&EventProcessor::spin, this); + } + + void EventProcessor::stop() + { + running_ = false; + event_bus_.stop(); + if (worker_.joinable()) worker_.join(); + } + + void EventProcessor::spin() + { + Event event; + while (running_) + { + // Emergency được xử lý trước mọi thứ khác, kể cả khi hàng đợi đang dài. + handlePendingEmergency(); + + if (!event_bus_.pop(event)) + continue; + + // Emergency có thể vừa tới trong lúc đang chờ pop(): xử lý nó trước sự kiện vừa lấy ra. + handlePendingEmergency(); + + process(event); + } + } + + void EventProcessor::handlePendingEmergency() + { + if (event_bus_.takeEmergency()) + mission_manager_.emergency(); + } + + void EventProcessor::handleRequest(const MissionRequest& request) + { + MissionSourceAdapter* adapter = registry_.find(request.schema); + if (!adapter) + { + robot::log_error("EventProcessor: no source declares schema '%s'", + request.schema.c_str()); + return; + } + + std::string reason; + if (!adapter->validate(request, reason)) + { + // A1: payload hỏng bị chặn tại đây, hàng đợi đang chạy không bị đụng tới. + robot::log_warning("EventProcessor: rejecting request schema '%s' — %s", + request.schema.c_str(), reason.c_str()); + return; + } + + const ConversionResult result = adapter->convert(request); + + // Bất biến D8, kiểm ở core chứ không chỉ trong adapter: một plugin bên thứ ba sinh ra + // mission không goal và cũng không action sẽ khiến navigation nhận một chặng không có việc + // gì để làm, và chặng đó không bao giờ báo kết quả về. + for (const auto& mission : result.missions) + { + if (!mission) + { + robot::log_error("EventProcessor: adapter for schema '%s' returned a null mission " + "— dropping the whole batch", + request.schema.c_str()); + return; + } + + if (!mission->has_goal && mission->actions.empty()) + { + robot::log_error("EventProcessor: adapter for schema '%s' produced a mission with " + "neither goal nor action — dropping the whole batch", + request.schema.c_str()); + return; + } + } + + if (result.empty()) + { + robot::log_warning("EventProcessor: request schema '%s' produced no mission — the " + "queue is left untouched", request.schema.c_str()); + return; + } + + if (result.mode == SubmitMode::kAppend) + mission_manager_.append(result.missions); + else + mission_manager_.submit(result.missions); + } + + void EventProcessor::process(const Event& event) + { + switch (event.type) + { + case EventType::SUBMIT_REQUEST: handleRequest(event.request); break; + case EventType::NAV_DONE: mission_manager_.onNavigationDone(event.mission_id); break; + case EventType::NAV_FAILED: mission_manager_.onNavigationFailed(event.mission_id); break; + case EventType::PAUSE: mission_manager_.pause(); break; + case EventType::RESUME: mission_manager_.resume(); break; + case EventType::CANCEL: mission_manager_.cancel(); break; + + // Đã được xử lý ngay lúc phát qua cờ out-of-band; lần gọi này là idempotent và chỉ giữ + // cho dòng thời gian trong log liền mạch. + case EventType::EMERGENCY: mission_manager_.emergency(); break; + + case EventType::CLEAR_EMERGENCY: mission_manager_.clearEmergency(); break; + default: + robot::log_error("EventProcessor: event of unknown type"); + break; + } + } + + void EventProcessor::submitRequest(const MissionRequest& request) + { + if (request.schema.empty()) + { + robot::log_error("EventProcessor: request declares no schema"); + return; + } + + Event event; + event.type = EventType::SUBMIT_REQUEST; + event.request = request; + event_bus_.push(std::move(event)); + } + + void EventProcessor::orderEvent(const robot_protocol_msgs::Order& order) + { + submitRequest(MissionRequest::fromOrder(order)); + } + + void EventProcessor::goalEvent(const robot_geometry_msgs::PoseStamped& goal) + { + submitRequest(MissionRequest::fromPose(goal)); + } + + void EventProcessor::pauseEvent() + { + Event event; + event.type = EventType::PAUSE; + event_bus_.push(std::move(event)); + } + + void EventProcessor::resumeEvent() + { + Event event; + event.type = EventType::RESUME; + event_bus_.push(std::move(event)); + } + + void EventProcessor::cancelEvent() + { + Event event; + event.type = EventType::CANCEL; + event_bus_.push(std::move(event)); + } + + void EventProcessor::navDoneEvent(MissionId id) + { + Event event; + event.type = EventType::NAV_DONE; + event.mission_id = id; + event_bus_.push(std::move(event)); + } + + void EventProcessor::navFailedEvent(MissionId id) + { + Event event; + event.type = EventType::NAV_FAILED; + event.mission_id = id; + event_bus_.push(std::move(event)); + } + + void EventProcessor::emergencyEvent() + { + Event event; + event.type = EventType::EMERGENCY; + event_bus_.pushEmergency(std::move(event)); + } + + void EventProcessor::clearEmergencyEvent() + { + // Không đi đường out-of-band: gỡ emergency là hành động có chủ đích của người vận hành, + // phải xếp sau mọi thứ đã phát trước nó. + Event event; + event.type = EventType::CLEAR_EMERGENCY; + event_bus_.push(std::move(event)); + } + +} // namespace mission_adapters diff --git a/src/mission_adapters.cpp b/src/mission_adapters.cpp deleted file mode 100644 index 29b7532..0000000 --- a/src/mission_adapters.cpp +++ /dev/null @@ -1,529 +0,0 @@ -//file mission_adapters.cpp -#include -#include - -namespace mission_adapters -{ - // ───────────────────────────────────────────────────────────────────────── - // EventBus - // ───────────────────────────────────────────────────────────────────────── - - void EventBus::push(const Event& event) - { - std::lock_guard lock(mutex_); - Event queued_event = event; - queued_event.sequence = next_sequence_++; - queue_.push(std::move(queued_event)); - cv_.notify_one(); - } - - void EventBus::push(Event&& event) - { - std::lock_guard lock(mutex_); - event.sequence = next_sequence_++; - queue_.push(std::move(event)); - cv_.notify_one(); - } - - bool EventBus::pop(Event& event) - { - std::unique_lock lock(mutex_); - cv_.wait(lock, [this] { return stop_ || !queue_.empty(); }); - - if (stop_ || queue_.empty()) return false; - - event = queue_.top(); - queue_.pop(); - return true; - } - - void EventBus::stop() - { - { - std::lock_guard lock(mutex_); - stop_ = true; - } - cv_.notify_all(); - } - - void EventBus::reset() - { - std::lock_guard lock(mutex_); - stop_ = false; - next_sequence_ = 0; - while (!queue_.empty()) queue_.pop(); - } - - // ───────────────────────────────────────────────────────────────────────── - // GoalAdapter - // ───────────────────────────────────────────────────────────────────────── - - std::vector> - GoalAdapter::convert(const robot_geometry_msgs::PoseStamped& goal) - { - auto mission = std::make_shared(); - mission->type = MissionType::SIMPLE_GOAL; - mission->priority = 0; - mission->goal = goal; - - return {mission}; - } - - // ───────────────────────────────────────────────────────────────────────── - // VDA5050Adapter - // ───────────────────────────────────────────────────────────────────────── - - std::vector> - VDA5050Adapter::convert(const robot_protocol_msgs::Order& order) - { - std::vector> missions; - std::vector action_node_indices; - - if (order.nodes.empty()) return missions; - - if (order.nodes.size() > 1 && order.edges.size() < order.nodes.size() - 1) - { - robot::log_error("Invalid VDA5050 order: edge count is smaller than node_count - 1"); - return missions; - } - - for (size_t i = 0; i < order.nodes.size(); ++i) - { - if (!order.nodes[i].actions.empty()) - action_node_indices.push_back(i); - } - - size_t start_node_idx = 0; - - for (size_t i = 0; i < action_node_indices.size(); ++i) - { - size_t end_node_idx = action_node_indices[i]; - - auto mission = std::make_shared(); - mission->type = MissionType::VDA5050_ORDER; - mission->priority = 0; - - mission->nodes.assign( - order.nodes.begin() + start_node_idx, - order.nodes.begin() + end_node_idx + 1); - - if (end_node_idx > start_node_idx) - { - mission->edges.assign( - order.edges.begin() + start_node_idx, - order.edges.begin() + end_node_idx); - } - - missions.push_back(mission); - start_node_idx = end_node_idx; - } - - // Remaining segment after the last action node - if (start_node_idx < order.nodes.size() - 1) - { - auto mission = std::make_shared(); - mission->type = MissionType::VDA5050_ORDER; - mission->priority = 0; - - mission->nodes.assign( - order.nodes.begin() + start_node_idx, - order.nodes.end()); - - if (start_node_idx < order.edges.size()) - { - mission->edges.assign( - order.edges.begin() + start_node_idx, - order.edges.end()); - } - - missions.push_back(mission); - } - - // Collect and sort actions - for (auto& mission : missions) - { - for (const auto& edge : mission->edges) - { - for (const auto& action : edge.actions) - { - Action ma; - ma.sequenceId = edge.sequenceId; - ma.type = ActionType::EDGE_ACTION; - ma.action = action; - mission->actions.push_back(std::move(ma)); - } - } - - const auto& node = mission->nodes.back(); - for (const auto& action : node.actions) - { - Action ma; - ma.sequenceId = node.sequenceId; - ma.type = ActionType::NODE_ACTION; - ma.action = action; - mission->actions.push_back(std::move(ma)); - } - - std::sort(mission->actions.begin(), mission->actions.end(), - [](const Action& a, const Action& b) { - return a.sequenceId < b.sequenceId; - }); - } - - return missions; - } - - // ───────────────────────────────────────────────────────────────────────── - // MissionManager - // ───────────────────────────────────────────────────────────────────────── - - void MissionManager::submit(const std::vector>& missions) - { - std::lock_guard lock(mutex_); - - if (state_ == MissionState::EMERGENCY) - return; - - if (!mission_queue_.empty()) - { - mission_queue_ = {}; - current_mission_.reset(); - } - - for (const auto& mission : missions) - mission_queue_.push(mission); - - // FIX #9: Transition to QUEUED from any "inactive" state, including - // COMPLETED and QUEUED itself, so the executor always re-arms. - if (!missions.empty()) - { - switch (state_) - { - case MissionState::IDLE: - case MissionState::COMPLETED: - case MissionState::FAILED: - case MissionState::CANCELLED: - case MissionState::CLEAR_EMERGENCY: - state_ = MissionState::QUEUED; - break; - default: - break; // RUNNING / PAUSED / QUEUED — already active, leave as-is - } - } - } - - std::shared_ptr MissionManager::nextMission() - { - std::lock_guard lock(mutex_); - - if (state_ == MissionState::IDLE || - state_ == MissionState::PAUSED || - state_ == MissionState::FAILED || - state_ == MissionState::CANCELLED || - state_ == MissionState::EMERGENCY || - state_ == MissionState::CLEAR_EMERGENCY) - { - return nullptr; - } - - // FIX #2: Removed the redundant `if(current_mission_ == nullptr)` check. - // The two guards are now a clean early-return then fall-through. - if (current_mission_) - return current_mission_; - - if (mission_queue_.empty()) - return nullptr; - - current_mission_ = mission_queue_.front(); - mission_queue_.pop(); - state_ = MissionState::RUNNING; - - return current_mission_; - } - - void MissionManager::onNavigationDone() - { - std::lock_guard lock(mutex_); - - if (state_ != MissionState::RUNNING) - return; - - current_mission_.reset(); - state_ = mission_queue_.empty() ? MissionState::IDLE : MissionState::QUEUED; - } - - void MissionManager::onNavigationFailed() - { - std::lock_guard lock(mutex_); - - if (state_ != MissionState::RUNNING) - return; - - current_mission_.reset(); - while (!mission_queue_.empty()) mission_queue_.pop(); - state_ = MissionState::FAILED; - } - - void MissionManager::cancel() - { - std::lock_guard lock(mutex_); - current_mission_.reset(); - while (!mission_queue_.empty()) mission_queue_.pop(); - if(state_ == MissionState::EMERGENCY) return; - state_ = MissionState::CANCELLED; - } - - void MissionManager::emergency() - { - std::lock_guard lock(mutex_); - current_mission_.reset(); - while (!mission_queue_.empty()) mission_queue_.pop(); - state_ = MissionState::EMERGENCY; - } - - void MissionManager::clearEmergency() - { - std::lock_guard lock(mutex_); - if(state_ == MissionState::EMERGENCY) - state_ = MissionState::CLEAR_EMERGENCY; - } - - void MissionManager::pause() - { - std::lock_guard lock(mutex_); - if (state_ == MissionState::IDLE || - state_ == MissionState::RUNNING || - state_ == MissionState::QUEUED) - state_ = MissionState::PAUSED; - } - - void MissionManager::resume() - { - std::lock_guard lock(mutex_); - if (state_ != MissionState::PAUSED) return; - - if (current_mission_) - state_ = MissionState::RUNNING; - else if (!current_mission_ && !mission_queue_.empty()) - state_ = MissionState::QUEUED; - else - state_ = MissionState::IDLE; - } - - MissionState MissionManager::state() const - { - std::lock_guard lock(mutex_); - return state_; - } - - // FIX #3: hasMission now reflects ALL pending work, not just the queue. - bool MissionManager::hasMission() const - { - std::lock_guard lock(mutex_); - return current_mission_ != nullptr || !mission_queue_.empty(); - } - - // ───────────────────────────────────────────────────────────────────────── - // EventProcessor - // ───────────────────────────────────────────────────────────────────────── - - EventProcessor::EventProcessor(MissionManager& mission_manager) - : mission_manager_(mission_manager) - {} - - EventProcessor::~EventProcessor() { stop(); } - - void EventProcessor::start() - { - if (running_) return; - running_ = true; - event_bus_.reset(); - worker_ = std::thread(&EventProcessor::spin, this); - } - - void EventProcessor::stop() - { - running_ = false; - event_bus_.stop(); - if (worker_.joinable()) worker_.join(); - } - - void EventProcessor::spin() - { - Event event; - while (running_) - { - if (event_bus_.pop(event)) - process(event); - } - } - - void EventProcessor::process(const Event& event) - { - switch (event.type) - { - case EventType::SUBMIT_MISSIONS: mission_manager_.submit(event.missions); break; - case EventType::NAV_DONE: mission_manager_.onNavigationDone(); break; - case EventType::NAV_FAILED: mission_manager_.onNavigationFailed(); break; - case EventType::PAUSE: mission_manager_.pause(); break; - case EventType::RESUME: mission_manager_.resume(); break; - case EventType::CANCEL: mission_manager_.cancel(); break; - case EventType::EMERGENCY: mission_manager_.emergency(); break; - case EventType::CLEAR_EMERGENCY: mission_manager_.clearEmergency(); break; - default: - robot::log_error("Unknown event type"); - break; - } - } - - void EventProcessor::orderEvent(const robot_protocol_msgs::Order& order) - { - Event event; - event.type = EventType::SUBMIT_MISSIONS; - event.priority = PRIORITY_ORDER; - event.missions = vda5050_adapter_.convert(order); - event_bus_.push(event); - } - - void EventProcessor::goalEvent(const robot_geometry_msgs::PoseStamped& goal) - { - Event event; - event.type = EventType::SUBMIT_MISSIONS; - event.priority = PRIORITY_ORDER; - event.missions = goal_adapter_.convert(goal); - event_bus_.push(event); - } - - void EventProcessor::pauseEvent() - { - Event event; - event.type = EventType::PAUSE; - event.priority = PRIORITY_PAUSE; - event_bus_.push(std::move(event)); - } - - void EventProcessor::resumeEvent() - { - Event event; - event.type = EventType::RESUME; - event.priority = PRIORITY_RESUME; - event_bus_.push(std::move(event)); - } - - void EventProcessor::cancelEvent() - { - Event event; - event.type = EventType::CANCEL; - event.priority = PRIORITY_CANCEL; - event_bus_.push(std::move(event)); - } - - void EventProcessor::navDoneEvent() - { - Event event; - event.type = EventType::NAV_DONE; - event.priority = PRIORITY_NAV_DONE; - event_bus_.push(std::move(event)); - } - - // FIX #4: Use PRIORITY_NAV_FAILED (correct constant name). - void EventProcessor::navFailedEvent() - { - Event event; - event.type = EventType::NAV_FAILED; - event.priority = PRIORITY_NAV_FAILED; - event_bus_.push(std::move(event)); - } - - void EventProcessor::emergencyEvent() - { - Event event; - event.type = EventType::EMERGENCY; - event.priority = PRIORITY_EMERGENCY; - event_bus_.push(std::move(event)); - } - - void EventProcessor::clearEmergencyEvent() - { - Event event; - event.type = EventType::CLEAR_EMERGENCY; - event.priority = PRIORITY_EMERGENCY; - event_bus_.push(std::move(event)); - } - - // ───────────────────────────────────────────────────────────────────────── - // MissionExecutor - // ───────────────────────────────────────────────────────────────────────── - - MissionExecutor::MissionExecutor(MissionManager& manager) - : mission_manager_(manager) - {} - - MissionExecutor::~MissionExecutor() { stop(); } - - void MissionExecutor::start() - { - if (running_) return; - running_ = true; - worker_ = std::thread(&MissionExecutor::spin, this); - } - - void MissionExecutor::stop() - { - running_ = false; - if (worker_.joinable()) worker_.join(); - } - - void MissionExecutor::spin() - { - robot::Rate rate(20); - - while (running_) - { - auto mission = mission_manager_.nextMission(); - - if (mission) - { - bool is_new_mission = false; - - { - std::lock_guard lock(mutex_); - if (mission != last_dispatched_mission_) - { - last_dispatched_mission_ = mission; - mission_execute_ = mission; - is_new_mission = true; - } - } - - if (is_new_mission) - { - MissionCallback callback; - { - std::lock_guard lock(mutex_); - callback = mission_callback_; - } - if (callback) callback(mission); - } - } - else - { - // FIX #5: Only reset the dedup token when the manager is truly - // done (IDLE / CANCELLED / FAILED / EMERGENCY), NOT when - // it is merely PAUSED — the mission hasn't changed there. - auto s = mission_manager_.state(); - if (s == MissionState::IDLE || - s == MissionState::CANCELLED || - s == MissionState::FAILED || - s == MissionState::EMERGENCY) - { - std::lock_guard lock(mutex_); - last_dispatched_mission_.reset(); - } - } - - rate.sleep(); - } - } - -} // namespace mission_adapters diff --git a/src/mission_config.cpp b/src/mission_config.cpp new file mode 100644 index 0000000..41843a8 --- /dev/null +++ b/src/mission_config.cpp @@ -0,0 +1,44 @@ +#include + +#include + +#include + +namespace mission_adapters +{ + bool MissionConfig::loadFromParams(robot::NodeHandle& nh, const std::string& ns) + { + const std::string prefix = ns.empty() ? std::string() : ns + "/"; + + nh.getParam(prefix + "mission_timeout", mission_timeout, mission_timeout); + nh.getParam(prefix + "clear_queue_on_failure", clear_queue_on_failure, + clear_queue_on_failure); + + if (!validate()) + return false; + + print(); + return true; + } + + bool MissionConfig::validate() const + { + if (!std::isfinite(mission_timeout) || mission_timeout < 0.0) + { + robot::log_error("MissionConfig: mission_timeout = %.3f is invalid (needs >= 0 [s], 0 " + "= off)", mission_timeout); + return false; + } + + return true; + } + + void MissionConfig::print() const + { + robot::log_info("MissionConfig: mission_timeout = %.3f [s] (%s), clear_queue_on_failure = %s", + mission_timeout, + mission_timeout > 0.0 ? "on" : "off", + clear_queue_on_failure ? "true" : "false"); + } + +} // namespace mission_adapters diff --git a/src/mission_executor.cpp b/src/mission_executor.cpp new file mode 100644 index 0000000..52786bb --- /dev/null +++ b/src/mission_executor.cpp @@ -0,0 +1,80 @@ +#include + +#include + +namespace mission_adapters +{ + // ───────────────────────────────────────────────────────────────────────── + // MissionExecutor + // ───────────────────────────────────────────────────────────────────────── + + MissionExecutor::MissionExecutor(MissionManager& manager) + : mission_manager_(manager) + {} + + MissionExecutor::~MissionExecutor() { stop(); } + + void MissionExecutor::setNavigationClient(NavigationClient* client) + { + std::lock_guard lock(mutex_); + navigation_client_ = client; + } + + void MissionExecutor::start() + { + if (running_) return; + running_ = true; + worker_ = std::thread(&MissionExecutor::spin, this); + } + + void MissionExecutor::stop() + { + running_ = false; + mission_manager_.wakeUp(); // gỡ thread ra khỏi waitForWork() để join() không treo + if (worker_.joinable()) worker_.join(); + } + + void MissionExecutor::step() + { + NavigationClient* client = nullptr; + { + std::lock_guard lock(mutex_); + client = navigation_client_; + } + + if (!client) + return; + + // Cancel trước dispatch: nếu order mới vừa thay order cũ, robot phải được bảo dừng chặng cũ + // trước khi nhận chặng mới. Đảo thứ tự sẽ có lúc hai lệnh cùng hiệu lực. + const MissionId cancel_id = mission_manager_.takePendingCancel(); + if (cancel_id != kInvalidMissionId) + client->cancelActive(cancel_id); + + const auto mission = mission_manager_.nextMission(); + if (!mission) + return; + + if (!client->dispatch(mission)) + { + // Navigation từ chối: coi như chặng này hỏng, đừng để mission kẹt RUNNING vĩnh viễn. + robot::log_error("MissionExecutor: navigation rejected mission %lu", + static_cast(mission->id)); + mission_manager_.onNavigationFailed(mission->id); + } + } + + void MissionExecutor::spin() + { + while (running_) + { + // M10: chờ đúng lúc có việc thay vì poll. Poll 20 Hz nghĩa là mỗi lệnh cancel phải + // đợi trung bình 25 ms trước khi tới được navigation, không vì lý do gì cả. + if (!mission_manager_.waitForWork()) + continue; + + step(); + } + } + +} // namespace mission_adapters diff --git a/src/mission_manager.cpp b/src/mission_manager.cpp new file mode 100644 index 0000000..bd31380 --- /dev/null +++ b/src/mission_manager.cpp @@ -0,0 +1,389 @@ +#include + +#include + +#include + +namespace mission_adapters +{ +namespace +{ + /** + * @brief Đánh thức thread đang chờ việc khi rời scope, kể cả khi hàm return sớm. + * + * Khai báo ngay sau std::lock_guard nên nó bị huỷ TRƯỚC lock_guard: notify xảy ra khi vẫn còn + * giữ khoá — an toàn, và không có đường nào ra khỏi hàm mà quên đánh thức executor. + */ + class NotifyOnExit + { + public: + explicit NotifyOnExit(std::condition_variable& cv) : cv_(cv) {} + ~NotifyOnExit() { cv_.notify_all(); } + + NotifyOnExit(const NotifyOnExit&) = delete; + NotifyOnExit& operator=(const NotifyOnExit&) = delete; + + private: + std::condition_variable& cv_; + }; + +} // namespace + + // ───────────────────────────────────────────────────────────────────────── + // MissionManager + // ───────────────────────────────────────────────────────────────────────── + + void MissionManager::setConfig(const MissionConfig& config) + { + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + config_ = config; + } + + bool MissionManager::hasWorkLocked() const + { + return pending_cancel_ != kInvalidMissionId || + (state_ == MissionState::QUEUED && !mission_queue_.empty()); + } + + bool MissionManager::timeoutArmedLocked() const + { + return config_.mission_timeout > 0.0 && + state_ == MissionState::RUNNING && + current_mission_ != nullptr; + } + + MissionId MissionManager::currentIdLocked() const + { + return current_mission_ ? current_mission_->id : kInvalidMissionId; + } + + void MissionManager::setStateLocked(MissionState next, const char* reason, MissionId id) + { + if (state_ == next) + return; // C11: chỉ log khi state đổi thật, không log lặp trong vòng lặp + + robot::log_info("MissionManager: %s -> %s (%s, mission %lu)", + toString(state_), toString(next), reason, + static_cast(id)); + + state_ = next; + } + + void MissionManager::expireCurrentLocked() + { + if (!current_mission_) + return; + + robot::log_warning("MissionManager: mission %lu exceeded %.3f [s] — cancelling the leg", + static_cast(current_mission_->id), + config_.mission_timeout); + + // Khác NAV_FAILED: navigation vẫn đang chạy chặng này nên phải bảo nó dừng, nếu không robot + // tiếp tục đi tới goal của một mission mà mission layer đã bỏ. + const MissionId expired_id = currentIdLocked(); + requestCancelOfCurrentLocked(); + + if (config_.clear_queue_on_failure) + while (!mission_queue_.empty()) mission_queue_.pop(); + + setStateLocked(mission_queue_.empty() ? MissionState::FAILED : MissionState::QUEUED, + "mission_timeout", expired_id); + } + + void MissionManager::requestCancelOfCurrentLocked() + { + if (!current_mission_) + return; + + pending_cancel_ = current_mission_->id; + current_mission_.reset(); + } + + void MissionManager::submit(const std::vector>& missions) + { + // A1: rỗng = không có việc, KHÔNG phải lệnh xoá hàng đợi. Kiểm tra trước khi lấy khoá để + // một order lỗi không bao giờ chạm được vào trạng thái. + if (missions.empty()) + return; + + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + if (state_ == MissionState::EMERGENCY) + { + robot::log_warning("MissionManager: rejecting submit while in EMERGENCY"); + return; + } + + // Q1 — preempt tường minh: order mới thay order cũ thì chặng đang chạy phải được dừng, + // không chỉ bị quên đi. + requestCancelOfCurrentLocked(); + + mission_queue_ = {}; + + for (const auto& mission : missions) + { + if (!mission) + continue; + + mission->id = next_mission_id_++; + mission_queue_.push(mission); + } + + if (mission_queue_.empty()) + return; + + // PAUSED được giữ nguyên: người vận hành đã chủ động dừng, order mới không được tự chạy. + if (state_ != MissionState::PAUSED) + setStateLocked(MissionState::QUEUED, "submit", mission_queue_.back()->id); + } + + void MissionManager::append(const std::vector>& missions) + { + if (missions.empty()) + return; + + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + if (state_ == MissionState::EMERGENCY) + { + robot::log_warning("MissionManager: rejecting append while in EMERGENCY"); + return; + } + + for (const auto& mission : missions) + { + if (!mission) + continue; + + mission->id = next_mission_id_++; + mission_queue_.push(mission); + } + + // RUNNING / PAUSED / QUEUED giữ nguyên: đây là phần nối tiếp, không phải yêu cầu mới. + switch (state_) + { + case MissionState::IDLE: + case MissionState::COMPLETED: + case MissionState::FAILED: + case MissionState::CANCELLED: + case MissionState::CLEAR_EMERGENCY: + setStateLocked(MissionState::QUEUED, "append", mission_queue_.back()->id); + break; + default: + break; + } + } + + std::shared_ptr MissionManager::nextMission() + { + std::lock_guard lock(mutex_); + + // M6: chỉ QUEUED mới sinh ra mission mới. RUNNING nghĩa là chặng hiện tại chưa xong nên + // không có gì để giao thêm — dedup nằm ở đây, bên gọi không phải tự nhớ. + if (state_ != MissionState::QUEUED) + return nullptr; + + if (mission_queue_.empty()) + { + setStateLocked(MissionState::IDLE, "queue is empty"); + return nullptr; + } + + current_mission_ = mission_queue_.front(); + mission_queue_.pop(); + setStateLocked(MissionState::RUNNING, "dequeue", current_mission_->id); + mission_start_time_ = robot::Time::now(); // mốc tính mission_timeout + + return current_mission_; + } + + bool MissionManager::onNavigationDone(MissionId id) + { + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + if (state_ != MissionState::RUNNING || !current_mission_) + return false; + + // A2: outcome trễ của một mission đã bị thay thế không được tính cho mission đang chạy. + if (id != current_mission_->id) + { + robot::log_warning("MissionManager: dropping NAV_DONE of mission %lu (currently " + "running %lu)", + static_cast(id), + static_cast(current_mission_->id)); + return false; + } + + current_mission_.reset(); + setStateLocked(mission_queue_.empty() ? MissionState::COMPLETED : MissionState::QUEUED, + "nav_done", id); + return true; + } + + bool MissionManager::onNavigationFailed(MissionId id) + { + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + if (state_ != MissionState::RUNNING || !current_mission_) + return false; + + if (id != current_mission_->id) + { + robot::log_warning("MissionManager: dropping NAV_FAILED of mission %lu (currently " + "running %lu)", + static_cast(id), + static_cast(current_mission_->id)); + return false; + } + + current_mission_.reset(); + + // M8: mặc định xoá sạch hàng đợi. Với tuyến đường tuần tự, chặng n hỏng nghĩa là robot + // không tới được node n — chạy tiếp chặng n+1 là cắt ngang đoạn chưa được cho phép đi. + if (config_.clear_queue_on_failure) + while (!mission_queue_.empty()) mission_queue_.pop(); + + setStateLocked(mission_queue_.empty() ? MissionState::FAILED : MissionState::QUEUED, + "nav_failed", id); + return true; + } + + void MissionManager::cancel() + { + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + // A3: huỷ phải dừng được robot, không chỉ xoá hàng đợi trong bộ nhớ. + const MissionId cancelled_id = currentIdLocked(); + requestCancelOfCurrentLocked(); + while (!mission_queue_.empty()) mission_queue_.pop(); + + if (state_ == MissionState::EMERGENCY) return; + setStateLocked(MissionState::CANCELLED, "cancel", cancelled_id); + } + + void MissionManager::emergency() + { + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + const MissionId stopped_id = currentIdLocked(); + requestCancelOfCurrentLocked(); + while (!mission_queue_.empty()) mission_queue_.pop(); + setStateLocked(MissionState::EMERGENCY, "emergency", stopped_id); + } + + void MissionManager::clearEmergency() + { + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + if (state_ == MissionState::EMERGENCY) + setStateLocked(MissionState::CLEAR_EMERGENCY, "clear_emergency"); + } + + void MissionManager::pause() + { + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + if (state_ == MissionState::IDLE || + state_ == MissionState::RUNNING || + state_ == MissionState::QUEUED) + setStateLocked(MissionState::PAUSED, "pause", currentIdLocked()); + } + + void MissionManager::resume() + { + std::lock_guard lock(mutex_); + NotifyOnExit notify(work_cv_); + + if (state_ != MissionState::PAUSED) return; + + if (current_mission_) + setStateLocked(MissionState::RUNNING, "resume", current_mission_->id); + else if (!mission_queue_.empty()) + setStateLocked(MissionState::QUEUED, "resume"); + else + setStateLocked(MissionState::IDLE, "resume"); + } + + MissionState MissionManager::state() const + { + std::lock_guard lock(mutex_); + return state_; + } + + // FIX #3: hasMission now reflects ALL pending work, not just the queue. + bool MissionManager::hasMission() const + { + std::lock_guard lock(mutex_); + return current_mission_ != nullptr || !mission_queue_.empty(); + } + + MissionId MissionManager::currentMissionId() const + { + std::lock_guard lock(mutex_); + return current_mission_ ? current_mission_->id : kInvalidMissionId; + } + + MissionId MissionManager::takePendingCancel() + { + std::lock_guard lock(mutex_); + const MissionId id = pending_cancel_; + pending_cancel_ = kInvalidMissionId; + return id; + } + + bool MissionManager::waitForWork() + { + std::unique_lock lock(mutex_); + + while (true) + { + if (wake_requested_) + { + wake_requested_ = false; + return false; + } + + if (hasWorkLocked()) + return true; + + if (!timeoutArmedLocked()) + { + work_cv_.wait(lock); + continue; + } + + // M7: đo bằng robot::Time, không đếm chu kỳ — số chu kỳ không nói gì về thời gian thật + // khi vòng lặp bị nghẽn. + const double remaining = + (mission_start_time_ + robot::Duration(config_.mission_timeout) - robot::Time::now()) + .toSec(); + + if (remaining <= 0.0) + { + expireCurrentLocked(); + continue; + } + + work_cv_.wait_for(lock, std::chrono::duration(remaining)); + } + } + + void MissionManager::wakeUp() + { + { + std::lock_guard lock(mutex_); + wake_requested_ = true; + } + work_cv_.notify_all(); + } + +} // namespace mission_adapters diff --git a/src/plugin_registry.cpp b/src/plugin_registry.cpp new file mode 100644 index 0000000..5e3b9e8 --- /dev/null +++ b/src/plugin_registry.cpp @@ -0,0 +1,180 @@ +#include + +#include + +#include +#include +#include + +#include + +namespace mission_adapters +{ + PluginRegistry::~PluginRegistry() + { + clear(); + } + + void PluginRegistry::clear() + { + // Adapter phải chết trước factory: factory là thứ giữ .so còn nạp, thả ngược thứ tự sẽ gỡ + // thư viện trong khi vẫn còn object của nó. + adapters_.clear(); + factories_.clear(); + } + + bool PluginRegistry::registerAdapter(const MissionSourceAdapter::Ptr& adapter) + { + if (!adapter) + { + robot::log_error("PluginRegistry: adapter null"); + return false; + } + + const std::string schema_name = adapter->schema(); + if (schema_name.empty()) + { + robot::log_error("PluginRegistry: adapter declares an empty schema"); + return false; + } + + const auto existing = adapters_.find(schema_name); + if (existing != adapters_.end()) + { + // Hai nguồn cùng schema thì việc định tuyến trở nên phụ thuộc thứ tự nạp — từ chối thay + // vì im lặng ghi đè. + robot::log_error("PluginRegistry: schema '%s' is already registered by another adapter", + schema_name.c_str()); + return false; + } + + adapters_.emplace(schema_name, adapter); + return true; + } + + MissionSourceAdapter* PluginRegistry::find(const std::string& schema) const + { + const auto it = adapters_.find(schema); + return it == adapters_.end() ? nullptr : it->second.get(); + } + + std::vector PluginRegistry::schemas() const + { + std::vector result; + result.reserve(adapters_.size()); + for (const auto& entry : adapters_) + result.push_back(entry.first); + + return result; + } + + bool PluginRegistry::loadOne(const std::string& name, const std::string& type, + robot::NodeHandle& nh) + { + robot::PluginLoaderHelper loader(nh); + const std::string library_path = loader.findLibraryPath(type); + + if (library_path.empty()) + { + robot::log_error("PluginRegistry: no library found for '%s' — check the key " + "'%s/library_path' in the YAML and that the .so file exists", + type.c_str(), type.c_str()); + return false; + } + + std::function factory; + + try + { + factory = boost::dll::import_alias( + library_path, type, boost::dll::load_mode::append_decorations); + } + catch (const boost::system::system_error& ex) + { + // Sai tên symbol hoặc file không nạp được. Bắt tại đây để một plugin hỏng không giết cả + // tiến trình — nhưng vẫn báo lỗi để không ai tưởng nguồn này đang chạy. + robot::log_error("PluginRegistry: could not load symbol '%s' from '%s': %s", + type.c_str(), library_path.c_str(), ex.what()); + return false; + } + catch (const std::exception& ex) + { + robot::log_error("PluginRegistry: error while loading '%s': %s", + type.c_str(), ex.what()); + return false; + } + + MissionSourceAdapter::Ptr adapter; + try + { + adapter = factory(); + } + catch (const std::exception& ex) + { + robot::log_error("PluginRegistry: factory of '%s' threw an exception: %s", + type.c_str(), ex.what()); + return false; + } + + if (!adapter) + { + robot::log_error("PluginRegistry: factory of '%s' returned null", type.c_str()); + return false; + } + + if (!adapter->configure(name, nh)) + { + robot::log_error("PluginRegistry: '%s' (instance '%s') configure() failed", + type.c_str(), name.c_str()); + return false; + } + + if (!registerAdapter(adapter)) + return false; + + // Chỉ giữ factory sau khi adapter đã vào bảng: nếu đăng ký hỏng thì cũng không giữ .so lại. + factories_.push_back(std::move(factory)); + + robot::log_info("PluginRegistry: loaded '%s' (instance '%s') for schema '%s'", + type.c_str(), name.c_str(), adapter->schema().c_str()); + return true; + } + + bool PluginRegistry::loadFromConfig(robot::NodeHandle& nh, const std::string& ns) + { + const std::string key = ns.empty() ? std::string("mission_sources") + : ns + "/mission_sources"; + + YAML::Node sources; + if (!nh.getParam(key, sources) || !sources.IsSequence() || sources.size() == 0) + { + robot::log_error("PluginRegistry: '%s' is missing or is not a list — no mission source " + "was loaded", key.c_str()); + return false; + } + + bool all_ok = true; + + for (size_t i = 0; i < sources.size(); ++i) + { + const YAML::Node& entry = sources[i]; + + if (!entry.IsMap() || !entry["type"]) + { + robot::log_error("PluginRegistry: '%s[%zu]' is missing the 'type' key", + key.c_str(), i); + all_ok = false; + continue; + } + + const std::string type = entry["type"].as(); + const std::string name = entry["name"] ? entry["name"].as() : type; + + if (!loadOne(name, type, nh)) + all_ok = false; + } + + return all_ok; + } + +} // namespace mission_adapters diff --git a/src/robot_control_test.cpp b/src/robot_control_test.cpp deleted file mode 100644 index be607ee..0000000 --- a/src/robot_control_test.cpp +++ /dev/null @@ -1,103 +0,0 @@ -#include -#include - -#include - -using namespace mission_adapters; - -class RobotControlTest -{ - robot::move_base_core::BaseNavigation::Ptr move_base_ptr_; - - mission_adapters::MissionManager mission_manager_; - mission_adapters::EventProcessor event_processor_{mission_manager_}; - mission_adapters::MissionExecutor mission_executor_{mission_manager_}; - - // FIX #7: Fully qualified namespace for the initial value. - robot::move_base_core::State prev_nav_state_ = robot::move_base_core::State::PENDING; - - // Tracks whether the actions of the current mission are complete. - // FIX #8: Stub — replace with real action-done check from your action executor. - bool areActionsDone() const - { - // TODO: query your action executor for completion status. - return true; - } - -public: - explicit RobotControlTest(robot::move_base_core::BaseNavigation::Ptr move_base); - ~RobotControlTest(); - - void run(); - -private: - void executeMission(const Mission& mission); -}; - -RobotControlTest::RobotControlTest(robot::move_base_core::BaseNavigation::Ptr move_base) - : move_base_ptr_(std::move(move_base)) -{} - -RobotControlTest::~RobotControlTest() -{ - event_processor_.stop(); - mission_executor_.stop(); -} - -void RobotControlTest::run() -{ - if (!move_base_ptr_) - { - robot::log_error("RobotControlTest requires a valid BaseNavigation pointer"); - return; - } - - robot::Rate rate(50); - - mission_executor_.setMissionCallback( - [this](const std::shared_ptr& mission) - { - executeMission(*mission); - }); - - event_processor_.start(); - mission_executor_.start(); - - while (robot::ok()) - { - auto feedback = move_base_ptr_->getFeedback(); - if (!feedback) - { - rate.sleep(); - continue; - } - - auto nav_state = feedback->navigation_state; - - if (nav_state != prev_nav_state_ && nav_state == robot::move_base_core::State::SUCCEEDED && areActionsDone()) - { - event_processor_.navDoneEvent(); - } - else if (nav_state != prev_nav_state_ && nav_state == robot::move_base_core::State::ABORTED) - { - event_processor_.navFailedEvent(); - } - prev_nav_state_ = nav_state; - - // Example: receive an order (replace condition with your real source) - if (/* new order available */ false) - { - robot_protocol_msgs::Order order; - // ... populate order ... - event_processor_.orderEvent(order); - } - - rate.sleep(); - } -} - -void RobotControlTest::executeMission(const Mission& mission) -{ - // TODO: send mission goal to move_base_ptr_ - (void)mission; -} diff --git a/src/types.cpp b/src/types.cpp new file mode 100644 index 0000000..6146b3f --- /dev/null +++ b/src/types.cpp @@ -0,0 +1,23 @@ +#include + +namespace mission_adapters +{ + const char* toString(MissionState state) + { + switch (state) + { + case MissionState::IDLE: return "IDLE"; + case MissionState::QUEUED: return "QUEUED"; + case MissionState::RUNNING: return "RUNNING"; + case MissionState::PAUSED: return "PAUSED"; + case MissionState::COMPLETED: return "COMPLETED"; + case MissionState::FAILED: return "FAILED"; + case MissionState::CANCELLED: return "CANCELLED"; + case MissionState::EMERGENCY: return "EMERGENCY"; + case MissionState::CLEAR_EMERGENCY: return "CLEAR_EMERGENCY"; + } + + return "UNKNOWN"; + } + +} // namespace mission_adapters diff --git a/test/adapter_test.cpp b/test/adapter_test.cpp new file mode 100644 index 0000000..cdc817e --- /dev/null +++ b/test/adapter_test.cpp @@ -0,0 +1,527 @@ +#include + +#include + +#include +#include + +#include + +#include "goal_source_adapter.h" +#include "mission_test_utils.h" +#include "vda5050_source_adapter.h" + +namespace +{ +using namespace mission_adapters; +using mission_plugins::GoalSourceAdapter; +using mission_plugins::VDA5050SourceAdapter; +using mission_test::makeAction; +using mission_test::makeGoal; +using mission_test::makeOrder; + +class AdapterTest : public ::testing::Test +{ +protected: + void SetUp() override + { + robot::NodeHandle nh; + ASSERT_TRUE(goal_adapter.configure("goal_src", nh)); + ASSERT_TRUE(order_adapter.configure("vda5050_src", nh)); + } + + /// Chuyển một order, trả về danh sách mission (bỏ phần mode). + std::vector> convertOrder(const robot_protocol_msgs::Order& order) + { + return order_adapter.convert(MissionRequest::fromOrder(order)).missions; + } + + /// Chuyển một order và giữ nguyên cả ConversionResult để kiểm mode. + ConversionResult convertOrderFull(const robot_protocol_msgs::Order& order) + { + return order_adapter.convert(MissionRequest::fromOrder(order)); + } + + GoalSourceAdapter goal_adapter; + VDA5050SourceAdapter order_adapter; +}; + +// ── Schema ────────────────────────────────────────────────────────────────────────────────────── + +TEST_F(AdapterTest, AdaptersDeclareDistinctSchemas) +{ + EXPECT_EQ(goal_adapter.schema(), schema::kPoseStamped); + EXPECT_EQ(order_adapter.schema(), schema::kVda5050Order); + EXPECT_NE(goal_adapter.schema(), order_adapter.schema()); +} + +// ── GoalSourceAdapter ─────────────────────────────────────────────────────────────────────────── + +TEST_F(AdapterTest, GoalAdapterCreatesSingleMission) +{ + const auto missions = goal_adapter.convert(MissionRequest::fromPose(makeGoal(5.5, 9.1))).missions; + + ASSERT_EQ(missions.size(), 1u); + EXPECT_EQ(missions.front()->type, MissionType::SIMPLE_GOAL); + EXPECT_EQ(missions.front()->motion_hint, "position"); + EXPECT_DOUBLE_EQ(missions.front()->goal.pose.position.x, 5.5); + EXPECT_DOUBLE_EQ(missions.front()->goal.pose.position.y, 9.1); +} + +TEST_F(AdapterTest, GoalAdapterRejectsMissingPayload) +{ + MissionRequest request; + request.schema = schema::kPoseStamped; + + std::string reason; + EXPECT_FALSE(goal_adapter.validate(request, reason)); + EXPECT_FALSE(reason.empty()); +} + +TEST_F(AdapterTest, GoalAdapterRejectsNonFiniteGoal) +{ + auto goal = makeGoal(1.0, 1.0); + goal.pose.position.x = std::numeric_limits::quiet_NaN(); + goal.pose.orientation.w = 1.0; + + std::string reason; + EXPECT_FALSE(goal_adapter.validate(MissionRequest::fromPose(goal), reason)) + << "a goal containing NaN slipped through the boundary into navigation"; +} + +TEST_F(AdapterTest, GoalAdapterRejectsZeroQuaternion) +{ + auto goal = makeGoal(1.0, 1.0); + + std::string reason; + ASSERT_TRUE(goal_adapter.validate(MissionRequest::fromPose(goal), reason)) << reason; + + // Host quên set orientation: quaternion toàn 0 không phải "hướng bất kỳ", nó là dữ liệu hỏng. + goal.pose.orientation.w = 0.0; + EXPECT_FALSE(goal_adapter.validate(MissionRequest::fromPose(goal), reason)); +} + +// ── VDA5050SourceAdapter ──────────────────────────────────────────────────────────────────────── + +TEST_F(AdapterTest, EmptyOrderIsRejectedByValidate) +{ + robot_protocol_msgs::Order order; + + std::string reason; + EXPECT_FALSE(order_adapter.validate(MissionRequest::fromOrder(order), reason)); + EXPECT_TRUE(convertOrder(order).empty()); +} + +TEST_F(AdapterTest, OrderWithoutActionsCreatesOneTailMission) +{ + const auto missions = convertOrder(makeOrder(4)); + + ASSERT_EQ(missions.size(), 1u); + EXPECT_EQ(missions.front()->nodes.size(), 4u); + EXPECT_EQ(missions.front()->edges.size(), 3u); +} + +TEST_F(AdapterTest, InvalidOrderWithMissingEdgesIsRejected) +{ + auto order = makeOrder(4); + order.edges.pop_back(); + + std::string reason; + EXPECT_FALSE(order_adapter.validate(MissionRequest::fromOrder(order), reason)); + EXPECT_TRUE(convertOrder(order).empty()); +} + +TEST_F(AdapterTest, OrderSplitsAtNodeAction) +{ + auto order = makeOrder(5); + order.nodes[2].actions.push_back(makeAction("dock")); + + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 2u); + EXPECT_EQ(missions[0]->nodes.size(), 3u); + EXPECT_EQ(missions[1]->nodes.size(), 3u); +} + +TEST_F(AdapterTest, OrderCollectsAndSortsActions) +{ + auto order = makeOrder(2); + order.edges[0].actions.push_back(makeAction("edge")); + order.nodes[1].actions.push_back(makeAction("node")); + + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 1u); + ASSERT_EQ(missions.front()->actions.size(), 2u); + EXPECT_EQ(missions.front()->actions[0].type, ActionType::EDGE_ACTION); + EXPECT_EQ(missions.front()->actions[1].type, ActionType::NODE_ACTION); +} + +// ── A4: conformance VDA5050 ───────────────────────────────────────────────────────────────────── + +TEST_F(AdapterTest, MissionCarriesGoalAndStartFromNodes) +{ + auto order = makeOrder(3); + order.nodes[2].nodePosition.x = 7.0; + order.nodes[2].nodePosition.y = 8.0; + order.nodes[2].nodePosition.theta = 0.0; + + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 1u); + // Mission phải self-contained: consumer không phải tự đoán goal từ nodes.back(). + EXPECT_DOUBLE_EQ(missions.front()->goal.pose.position.x, 7.0); + EXPECT_DOUBLE_EQ(missions.front()->goal.pose.position.y, 8.0); + EXPECT_DOUBLE_EQ(missions.front()->goal.pose.orientation.w, 1.0); + EXPECT_EQ(missions.front()->goal.header.frame_id, "map"); + + EXPECT_DOUBLE_EQ(missions.front()->start.pose.position.x, 0.0); +} + +TEST_F(AdapterTest, NodeThetaBecomesQuaternion) +{ + auto order = makeOrder(2); + order.nodes[1].nodePosition.theta = M_PI; // [rad] + + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 1u); + // theta = pi -> quay 180 độ quanh z: (z, w) = (1, 0). + EXPECT_NEAR(missions.front()->goal.pose.orientation.z, 1.0, 1e-9); + EXPECT_NEAR(missions.front()->goal.pose.orientation.w, 0.0, 1e-9); +} + +TEST_F(AdapterTest, HorizonNodesAreNeverDispatched) +{ + auto order = makeOrder(5); + // Chỉ 3 node đầu là base; hai node cuối là horizon (fleet manager chưa cho phép đi). + order.nodes[3].released = false; + order.nodes[4].released = false; + order.edges[3].released = false; + + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 1u); + EXPECT_EQ(missions.front()->nodes.size(), 3u) << "the robot was handed the horizon part that " + "is not released yet"; + EXPECT_DOUBLE_EQ(missions.front()->goal.pose.position.x, 2.0); +} + +TEST_F(AdapterTest, OrderWithoutReleasedFlagIsTreatedAsFullBase) +{ + auto order = makeOrder(3); + for (auto& node : order.nodes) node.released = false; + for (auto& edge : order.edges) edge.released = false; + + // Host không điền `released`: chạy cả order còn hơn đứng im không dấu hiệu. + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 1u); + EXPECT_EQ(missions.front()->nodes.size(), 3u); +} + +TEST_F(AdapterTest, StaleOrderUpdateIdIsRejected) +{ + ASSERT_FALSE(convertOrder(makeOrder(3, "order_A", 2)).empty()); + + std::string reason; + + // Cùng orderId, orderUpdateId cũ hơn -> phát lại/đến trễ, không được chạy lại tuyến đường. + EXPECT_FALSE(order_adapter.validate(MissionRequest::fromOrder(makeOrder(3, "order_A", 1)), + reason)); + EXPECT_FALSE(order_adapter.validate(MissionRequest::fromOrder(makeOrder(3, "order_A", 2)), + reason)); + + // Cùng orderId, update mới hơn -> chấp nhận. + EXPECT_TRUE(order_adapter.validate(MissionRequest::fromOrder(makeOrder(4, "order_A", 3)), + reason)) << reason; + + // orderId khác -> order mới, không so orderUpdateId. + EXPECT_TRUE(order_adapter.validate(MissionRequest::fromOrder(makeOrder(3, "order_B", 0)), + reason)) << reason; +} + +TEST_F(AdapterTest, OrderUpdateAppendsOnlyNewlyReleasedSegment) +{ + // Base ban đầu: 3 node released, 2 node horizon. + auto order = makeOrder(5, "order_A", 0); + order.nodes[3].released = false; + order.nodes[4].released = false; + order.edges[3].released = false; + + const auto first = convertOrderFull(order); + ASSERT_EQ(first.missions.size(), 1u); + EXPECT_EQ(first.mode, SubmitMode::kReplace); + EXPECT_EQ(first.missions.front()->nodes.size(), 3u); + + // Fleet manager release nốt horizon. + auto update = makeOrder(5, "order_A", 1); + const auto second = convertOrderFull(update); + + ASSERT_EQ(second.missions.size(), 1u); + EXPECT_EQ(second.mode, SubmitMode::kAppend) + << "an order update replaced the whole queue -> the robot cancels and redoes the leg it is " + "on"; + + // Chặng mới bắt đầu từ node cuối của phần đã chạy, không lặp lại phần cũ. + EXPECT_EQ(second.missions.front()->nodes.size(), 3u); + EXPECT_DOUBLE_EQ(second.missions.front()->start.pose.position.x, 2.0); + EXPECT_DOUBLE_EQ(second.missions.front()->goal.pose.position.x, 4.0); +} + +TEST_F(AdapterTest, OrderUpdateWithoutNewNodesProducesNoWork) +{ + ASSERT_FALSE(convertOrder(makeOrder(3, "order_A", 0)).empty()); + + // Update không release thêm node nào: không có việc mới, và cũng không được xoá gì. + const auto result = convertOrderFull(makeOrder(3, "order_A", 1)); + EXPECT_TRUE(result.empty()); +} + +TEST_F(AdapterTest, NewOrderIdReplacesQueue) +{ + ASSERT_FALSE(convertOrder(makeOrder(3, "order_A", 0)).empty()); + + const auto result = convertOrderFull(makeOrder(2, "order_B", 0)); + + ASSERT_FALSE(result.empty()); + EXPECT_EQ(result.mode, SubmitMode::kReplace); +} + +// ── D8: goal optional, action đi nguyên vẹn ───────────────────────────────────────────────────── + +TEST_F(AdapterTest, ActionAtFirstNodeBecomesGoallessMission) +{ + auto order = makeOrder(3); + order.nodes[0].actions.push_back(makeAction("pick_at_start")); + + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 2u); + + // Chặng đầu: action ngay tại chỗ đứng, không có quãng đường nào để đi. + EXPECT_FALSE(missions[0]->has_goal); + ASSERT_EQ(missions[0]->actions.size(), 1u); + EXPECT_EQ(missions[0]->actions.front().action.actionId, "pick_at_start"); + + // Chặng sau: di chuyển bình thường. + EXPECT_TRUE(missions[1]->has_goal); + EXPECT_DOUBLE_EQ(missions[1]->goal.pose.position.x, 2.0); +} + +TEST_F(AdapterTest, MovingMissionsAlwaysHaveGoal) +{ + const auto missions = convertOrder(makeOrder(3)); + + ASSERT_EQ(missions.size(), 1u); + EXPECT_TRUE(missions.front()->has_goal); +} + +TEST_F(AdapterTest, ActionsPassThroughUnchangedAndInOrder) +{ + auto order = makeOrder(3); + order.edges[0].sequenceId = 1; + order.edges[0].actions.push_back(makeAction("beep")); + order.edges[1].sequenceId = 3; + order.edges[1].actions.push_back(makeAction("horn")); + order.nodes[2].sequenceId = 4; + order.nodes[2].actions.push_back(makeAction("lift")); + + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 1u); + const auto& actions = missions.front()->actions; + + ASSERT_EQ(actions.size(), 3u); + EXPECT_EQ(actions[0].action.actionId, "beep"); + EXPECT_EQ(actions[1].action.actionId, "horn"); + EXPECT_EQ(actions[2].action.actionId, "lift"); + + // Mission layer không diễn giải actionType — nó chỉ chuyển tiếp. + EXPECT_EQ(actions[2].action.actionType, "TEST"); + EXPECT_EQ(actions[2].type, ActionType::NODE_ACTION); +} + +TEST_F(AdapterTest, NonFiniteNodePositionIsRejected) +{ + auto order = makeOrder(3); + order.nodes[1].nodePosition.x = std::numeric_limits::infinity(); + + std::string reason; + EXPECT_FALSE(order_adapter.validate(MissionRequest::fromOrder(order), reason)); +} + +} // namespace + +// ── Compound action: mở rộng thành chuỗi chặng ────────────────────────────────────────────────── + +namespace +{ +/// @brief Gắn một action có tham số vào node. +void addAction(robot_protocol_msgs::Node& node, const std::string& type, + const std::string& param_key = "", const std::string& param_value = "") +{ + robot_protocol_msgs::Action action; + action.actionType = type; + action.actionId = type + "_id"; + + if (!param_key.empty()) + { + robot_protocol_msgs::ActionParameter p; + p.key = param_key; + p.value = param_value; + action.actionParameters.push_back(p); + } + node.actions.push_back(action); +} +} // namespace + +TEST_F(AdapterTest, CompoundActionExpandsIntoASequenceOfLegs) +{ + auto order = makeOrder(2); + addAction(order.nodes[1], "charge", "goal_frame", "charger_02_goal"); + + const auto missions = convertOrder(order); + + // nav -> n1 | DetectCharger | docking | startCharging + ASSERT_EQ(missions.size(), 4u); + + EXPECT_TRUE(missions[0]->has_goal); + EXPECT_TRUE(missions[0]->actions.empty()) << "action compound phải được GỠ khỏi chặng nav"; + EXPECT_EQ(missions[0]->motion_hint, "position"); + + ASSERT_EQ(missions[1]->actions.size(), 1u); + EXPECT_EQ(missions[1]->actions[0].action.actionType, "DetectCharger"); + EXPECT_FALSE(missions[1]->has_goal); + + EXPECT_TRUE(missions[2]->has_goal); + EXPECT_EQ(missions[2]->motion_hint, "docking"); + EXPECT_EQ(missions[2]->goal_frame, "charger_02_goal") << "frame phải lấy từ actionParameters"; + EXPECT_EQ(missions[2]->marker, "charger") << "marker phải chọn override planner độc lập TF"; + + ASSERT_EQ(missions[3]->actions.size(), 1u); + EXPECT_EQ(missions[3]->actions[0].action.actionType, "startCharging"); + EXPECT_FALSE(missions[3]->has_goal); +} + +TEST_F(AdapterTest, GeneratedActionsCarryTheOriginalParameters) +{ + auto order = makeOrder(2); + addAction(order.nodes[1], "charge", "goal_frame", "charger_02_goal"); + + const auto missions = convertOrder(order); + ASSERT_EQ(missions.size(), 4u); + + // Handler dò cần biết dò trạm nào; nó là chỗ duy nhất hiểu ý nghĩa các tham số đó. + const auto& detect = missions[1]->actions[0].action; + ASSERT_EQ(detect.actionParameters.size(), 1u); + EXPECT_EQ(detect.actionParameters[0].key, "goal_frame"); + EXPECT_EQ(detect.actionParameters[0].value, "charger_02_goal"); + + // actionId suy từ id gốc để truy vết được trong log. + EXPECT_NE(detect.actionId.find("charge_id"), std::string::npos); +} + +TEST_F(AdapterTest, PlainActionsKeepTheirJsonOrderAroundACompound) +{ + auto order = makeOrder(2); + addAction(order.nodes[1], "MutedOn"); + addAction(order.nodes[1], "charge", "goal_frame", "charger_goal"); + addAction(order.nodes[1], "MutedOff"); + + const auto missions = convertOrder(order); + + // nav+MutedOn | Detect | docking | startCharging | MutedOff + ASSERT_EQ(missions.size(), 5u); + + ASSERT_EQ(missions[0]->actions.size(), 1u); + EXPECT_EQ(missions[0]->actions[0].action.actionType, "MutedOn"); + + // MutedOff phải nằm SAU chuỗi charge. Gom hết action thường vào chặng nav sẽ bật lại cảm biến + // an toàn trước khi robot lùi vào trạm — đúng thứ MutedOn sinh ra để tránh. + ASSERT_EQ(missions[4]->actions.size(), 1u); + EXPECT_EQ(missions[4]->actions[0].action.actionType, "MutedOff"); + EXPECT_FALSE(missions[4]->has_goal); +} + +TEST_F(AdapterTest, ActionOutsideTheTableRunsAsAPlainAction) +{ + auto order = makeOrder(2); + addAction(order.nodes[1], "MutedOn"); + + const auto missions = convertOrder(order); + + ASSERT_EQ(missions.size(), 1u) << "action thường không được mở rộng"; + ASSERT_EQ(missions[0]->actions.size(), 1u); + EXPECT_EQ(missions[0]->actions[0].action.actionType, "MutedOn"); +} + +TEST_F(AdapterTest, RelativeMoveStepBecomesALegWithADistance) +{ + auto order = makeOrder(2); + addAction(order.nodes[1], "UnDockFromStation"); + + const auto missions = convertOrder(order); + ASSERT_EQ(missions.size(), 2u); + + EXPECT_TRUE(missions[1]->has_goal); + EXPECT_EQ(missions[1]->motion_hint, "go_straight"); + EXPECT_DOUBLE_EQ(missions[1]->relative_distance, -1.0); + EXPECT_TRUE(missions[1]->goal_frame.empty()); +} + +TEST_F(AdapterTest, FixedFrameStepDoesNotNeedAnyParameter) +{ + auto order = makeOrder(2); + addAction(order.nodes[1], "FixedDock"); + + const auto missions = convertOrder(order); + ASSERT_EQ(missions.size(), 2u); + EXPECT_EQ(missions[1]->goal_frame, "dock_target"); + EXPECT_EQ(missions[1]->marker, "trolley"); +} + +TEST_F(AdapterTest, MissingStructuralParameterDropsTheWholeOrder) +{ + auto order = makeOrder(2); + addAction(order.nodes[1], "charge"); // thiếu goal_frame + + // Bỏ CẢ order: một order chạy nửa vời — robot tới trạm sạc rồi không sạc — nguy hiểm hơn là + // không chạy. Và hàng đợi đang chạy không bị đụng tới (A1). + EXPECT_TRUE(convertOrder(order).empty()); +} + +TEST(CompoundConfig, RejectsAStepWithTwoKeywords) +{ + robot::NodeHandle nh; + VDA5050SourceAdapter adapter; + EXPECT_FALSE(adapter.configure("vda5050_bad_step", nh)) + << "không đúng một từ khoá thì không có cách diễn giải nào hiển nhiên đúng"; +} + +TEST(CompoundConfig, RejectsARecursiveCompound) +{ + robot::NodeHandle nh; + VDA5050SourceAdapter adapter; + EXPECT_FALSE(adapter.configure("vda5050_recursive", nh)) + << "expander sẽ mở rộng chính output của mình"; +} + +TEST(CompoundConfig, RejectsInvalidOrActionOnlyProfiles) +{ + robot::NodeHandle nh; + VDA5050SourceAdapter adapter; + EXPECT_FALSE(adapter.configure("vda5050_bad_profile", nh)); +} + +int main(int argc, char** argv) +{ + // Bảng `compound_actions` nằm trong cây config test. `overwrite = 0` để shell vẫn override được + // khi cần chạy tay với cây khác — cùng cách `plugin_registry_test` làm. +#ifdef MISSION_ADAPTERS_TEST_CONFIG_DIR + setenv("PNKX_NAV_CORE_CONFIG_DIR", MISSION_ADAPTERS_TEST_CONFIG_DIR, 0); +#endif + + testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} diff --git a/test/config/mission_adapters_params.yaml b/test/config/mission_adapters_params.yaml new file mode 100644 index 0000000..35c3180 --- /dev/null +++ b/test/config/mission_adapters_params.yaml @@ -0,0 +1,107 @@ +# Config CHỈ dùng cho test của gói. Bản runtime nằm ở +# `pnkx_nav_core/config/mission_adapters_params.yaml` (C2) — sửa tham số vận hành thì sửa ở đó. +# +# Chạy test kèm: PNKX_NAV_CORE_CONFIG_DIR=src/AMR_T800/Test/mission_adapters/test/config + +mission_adapters: + # Nguồn mission. Thêm loại mới chỉ cần thêm một entry ở đây + một plugin .so. + mission_sources: + - {name: goal_src, type: GoalSourceAdapter} + - {name: vda5050_src, type: VDA5050SourceAdapter} + + mission_timeout: 0.0 # [s] 0 = tắt + clear_queue_on_failure: false # false = chỉ bỏ chặng lỗi, giữ phần còn lại của order + +# Bảng symbol -> thư viện cho Boost.DLL. Thiếu khoá library_path là nguyên nhân phổ biến nhất của +# lỗi "plugin build xong nhưng runtime báo không tìm thấy". +GoalSourceAdapter: + library_path: libmission_adapters_goal_source + +VDA5050SourceAdapter: + library_path: libmission_adapters_vda5050_source + +# ── Các case lỗi mà plugin_registry_test cố ý dựng ra ──────────────────────────────────────────── +# +# Mỗi case là một namespace riêng để test gọi loadFromConfig(nh, "") mà không phải sinh +# file YAML lúc chạy. + +registry_test_missing_library_path: + mission_sources: + - {name: bad_src, type: MissingLibraryPathAdapter} + +registry_test_missing_library_file: + mission_sources: + - {name: bad_src, type: MissingLibraryFileAdapter} + +registry_test_wrong_symbol: + mission_sources: + - {name: bad_src, type: WrongSymbolAdapter} + +registry_test_duplicate_schema: + mission_sources: + - {name: goal_a, type: GoalSourceAdapter} + - {name: goal_b, type: GoalSourceAdapter} + +registry_test_entry_without_type: + mission_sources: + - {name: nameless_src} + +registry_test_empty: + mission_timeout: 0.0 + + +# Khai trong mission_sources nhưng KHÔNG có khoá library_path. +MissingLibraryPathAdapter: + description: "cố ý thiếu library_path" + +# library_path trỏ tới file không tồn tại. +MissingLibraryFileAdapter: + library_path: libmission_adapters_does_not_exist + +# Thư viện có thật nhưng symbol không tồn tại trong đó. +WrongSymbolAdapter: + library_path: libmission_adapters_goal_source + +# ── Compound action: action "phải dò rồi mới biết đích" ───────────────────────────────────────── +# +# Bảng chỉ giữ CẤU TRÚC; frame cụ thể tới từ actionParameters của chính order. +vda5050_src: + global_frame: map + compound_actions: + charge: + steps: + - {action: DetectCharger} + - {move_to_param: goal_frame, profile: docking, marker: charger} + - {action: startCharging} + + UnDockFromStation: + steps: + - {move: -1.0, profile: go_straight} + + FixedDock: + steps: + - {move_to: dock_target, profile: docking, marker: trolley} + +# Step có hai từ khoá -> configure() phải từ chối lúc boot. +vda5050_bad_step: + compound_actions: + charge: + steps: + - {action: DetectCharger, move: -1.0} + +# Compound sinh ra một actionType cũng là compound -> đệ quy. +vda5050_recursive: + compound_actions: + charge: + steps: + - {action: PickUp} + PickUp: + steps: + - {move: 0.5} + +# Profile chỉ có nghĩa trên step navigation và phải thuộc bốn profile runtime. +vda5050_bad_profile: + compound_actions: + invalid_name: + steps: + - {move: 0.5, profile: dock} diff --git a/test/event_bus_test.cpp b/test/event_bus_test.cpp new file mode 100644 index 0000000..87d41db --- /dev/null +++ b/test/event_bus_test.cpp @@ -0,0 +1,133 @@ +#include + +#include +#include + +#include + +namespace +{ +using namespace mission_adapters; + +Event makeEvent(EventType type) +{ + Event event; + event.type = type; + return event; +} + +// ───────────────────────────────────────────────────────────────────────────── +// A5 — thứ tự xử lý phải bằng thứ tự phát sinh. +// +// Bản trước sắp theo priority toàn phần: CANCEL (1) luôn đứng trước SUBMIT (5). Phát order rồi huỷ +// ngay thì huỷ được xử lý trước, order vào hàng đợi sau, và robot chạy đúng cái người dùng vừa huỷ. +// ───────────────────────────────────────────────────────────────────────────── + +TEST(EventBusTest, SubmitThenCancelKeepsCausalOrder) +{ + EventBus bus; + + bus.push(makeEvent(EventType::SUBMIT_REQUEST)); + bus.push(makeEvent(EventType::CANCEL)); + + Event event; + ASSERT_TRUE(bus.pop(event)); + EXPECT_EQ(event.type, EventType::SUBMIT_REQUEST); + + ASSERT_TRUE(bus.pop(event)); + EXPECT_EQ(event.type, EventType::CANCEL) << "the cancel was processed before the order it " + "cancels"; +} + +TEST(EventBusTest, PreservesFifoOrderAcrossEventTypes) +{ + EventBus bus; + + const std::vector pushed = { + EventType::PAUSE, + EventType::SUBMIT_REQUEST, + EventType::RESUME, + EventType::NAV_DONE, + EventType::CANCEL, + }; + + for (const auto type : pushed) + bus.push(makeEvent(type)); + + for (size_t i = 0; i < pushed.size(); ++i) + { + Event event; + ASSERT_TRUE(bus.pop(event)) << "event number " << i; + EXPECT_EQ(event.type, pushed[i]) << "wrong order at position " << i; + EXPECT_EQ(event.sequence, i); + } +} + +// ───────────────────────────────────────────────────────────────────────────── +// Emergency đi ngoài hàng đợi: độ trễ phản ứng không được phụ thuộc độ dài hàng đợi. +// ───────────────────────────────────────────────────────────────────────────── + +TEST(EventBusTest, EmergencyOvertakesQueue) +{ + EventBus bus; + + for (int i = 0; i < 50; ++i) + bus.push(makeEvent(EventType::SUBMIT_REQUEST)); + + EXPECT_FALSE(bus.emergencyPending()); + bus.pushEmergency(makeEvent(EventType::EMERGENCY)); + + // Thấy được ngay, không phải rút hết 50 sự kiện kia ra trước. + EXPECT_TRUE(bus.emergencyPending()); + EXPECT_EQ(bus.size(), 51u) << "an EMERGENCY event must still sit in the queue to keep the log " + "sequence"; + + EXPECT_TRUE(bus.takeEmergency()); + EXPECT_FALSE(bus.takeEmergency()) << "the emergency flag was consumed twice"; +} + +TEST(EventBusTest, EmergencyEventStillArrivesInOrder) +{ + EventBus bus; + + bus.push(makeEvent(EventType::PAUSE)); + bus.pushEmergency(makeEvent(EventType::EMERGENCY)); + + Event event; + ASSERT_TRUE(bus.pop(event)); + EXPECT_EQ(event.type, EventType::PAUSE); + + ASSERT_TRUE(bus.pop(event)); + EXPECT_EQ(event.type, EventType::EMERGENCY); +} + +TEST(EventBusTest, StopUnblocksPop) +{ + EventBus bus; + Event event; + + std::thread stopper([&bus] { bus.stop(); }); + EXPECT_FALSE(bus.pop(event)); + stopper.join(); +} + +TEST(EventBusTest, ResetDropsPendingEventsAndEmergencyFlag) +{ + EventBus bus; + + bus.push(makeEvent(EventType::PAUSE)); + bus.pushEmergency(makeEvent(EventType::EMERGENCY)); + + bus.reset(); + + EXPECT_TRUE(bus.empty()); + EXPECT_FALSE(bus.emergencyPending()); +} + +} // namespace + +int main(int argc, char** argv) +{ + testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} diff --git a/test/mission_adapters_test.cpp b/test/mission_adapters_test.cpp deleted file mode 100644 index f864927..0000000 --- a/test/mission_adapters_test.cpp +++ /dev/null @@ -1,360 +0,0 @@ -#include - -#include -#include -#include - -#include - -namespace -{ -using namespace mission_adapters; - -robot_geometry_msgs::PoseStamped makeGoal(double x, double y) -{ - robot_geometry_msgs::PoseStamped goal; - goal.pose.position.x = x; - goal.pose.position.y = y; - return goal; -} - -robot_protocol_msgs::Action makeAction(const std::string& id) -{ - robot_protocol_msgs::Action action; - action.actionId = id; - action.actionType = "TEST"; - return action; -} - -robot_protocol_msgs::Node makeNode(int sequence_id, bool add_action = false) -{ - robot_protocol_msgs::Node node; - node.sequenceId = sequence_id; - node.nodeId = "node_" + std::to_string(sequence_id); - node.nodePosition.x = sequence_id; - node.nodePosition.y = sequence_id; - - if (add_action) - node.actions.push_back(makeAction("node_action_" + std::to_string(sequence_id))); - - return node; -} - -robot_protocol_msgs::Edge makeEdge(int sequence_id, bool add_action = false) -{ - robot_protocol_msgs::Edge edge; - edge.sequenceId = sequence_id; - edge.edgeId = "edge_" + std::to_string(sequence_id); - - if (add_action) - edge.actions.push_back(makeAction("edge_action_" + std::to_string(sequence_id))); - - return edge; -} - -robot_protocol_msgs::Order makeOrder(int node_count) -{ - robot_protocol_msgs::Order order; - - for (int i = 0; i < node_count; ++i) - order.nodes.push_back(makeNode(i)); - - for (int i = 0; i < node_count - 1; ++i) - order.edges.push_back(makeEdge(i)); - - return order; -} - -bool waitForState(MissionManager& manager, MissionState expected, std::chrono::milliseconds timeout) -{ - const auto deadline = std::chrono::steady_clock::now() + timeout; - while (std::chrono::steady_clock::now() < deadline) - { - if (manager.state() == expected) - return true; - - std::this_thread::sleep_for(std::chrono::milliseconds(5)); - } - - return manager.state() == expected; -} - -class MissionAdaptersTest : public ::testing::Test -{ -protected: - GoalAdapter goal_adapter; - VDA5050Adapter order_adapter; -}; - -TEST(EventBusTest, PopsHighestPriorityFirst) -{ - EventBus bus; - - Event pause; - pause.type = EventType::PAUSE; - pause.priority = PRIORITY_PAUSE; - bus.push(pause); - - Event cancel; - cancel.type = EventType::CANCEL; - cancel.priority = PRIORITY_CANCEL; - bus.push(cancel); - - Event emergency; - emergency.type = EventType::EMERGENCY; - emergency.priority = PRIORITY_EMERGENCY; - bus.push(emergency); - - Event event; - ASSERT_TRUE(bus.pop(event)); - EXPECT_EQ(event.type, EventType::EMERGENCY); - - ASSERT_TRUE(bus.pop(event)); - EXPECT_EQ(event.type, EventType::CANCEL); - - ASSERT_TRUE(bus.pop(event)); - EXPECT_EQ(event.type, EventType::PAUSE); -} - -TEST(EventBusTest, PreservesFifoOrderForSamePriority) -{ - EventBus bus; - - Event emergency; - emergency.type = EventType::EMERGENCY; - emergency.priority = PRIORITY_EMERGENCY; - bus.push(emergency); - - Event clear_emergency; - clear_emergency.type = EventType::CLEAR_EMERGENCY; - clear_emergency.priority = PRIORITY_EMERGENCY; - bus.push(clear_emergency); - - Event event; - ASSERT_TRUE(bus.pop(event)); - EXPECT_EQ(event.type, EventType::EMERGENCY); - - ASSERT_TRUE(bus.pop(event)); - EXPECT_EQ(event.type, EventType::CLEAR_EMERGENCY); -} - -TEST(EventBusTest, StopUnblocksPop) -{ - EventBus bus; - Event event; - - std::thread stopper([&bus] { bus.stop(); }); - EXPECT_FALSE(bus.pop(event)); - stopper.join(); -} - -TEST(EventBusTest, ResetDropsPendingEvents) -{ - EventBus bus; - - Event pause; - pause.type = EventType::PAUSE; - pause.priority = PRIORITY_PAUSE; - bus.push(pause); - - bus.reset(); - EXPECT_TRUE(bus.empty()); -} - -TEST_F(MissionAdaptersTest, GoalAdapterCreatesSingleMission) -{ - const auto missions = goal_adapter.convert(makeGoal(5.5, 9.1)); - - ASSERT_EQ(missions.size(), 1u); - EXPECT_EQ(missions.front()->type, MissionType::SIMPLE_GOAL); - EXPECT_DOUBLE_EQ(missions.front()->goal.pose.position.x, 5.5); - EXPECT_DOUBLE_EQ(missions.front()->goal.pose.position.y, 9.1); -} - -TEST_F(MissionAdaptersTest, EmptyOrderCreatesNoMissions) -{ - robot_protocol_msgs::Order order; - EXPECT_TRUE(order_adapter.convert(order).empty()); -} - -TEST_F(MissionAdaptersTest, OrderWithoutActionsCreatesOneTailMission) -{ - const auto missions = order_adapter.convert(makeOrder(4)); - - ASSERT_EQ(missions.size(), 1u); - EXPECT_EQ(missions.front()->nodes.size(), 4u); - EXPECT_EQ(missions.front()->edges.size(), 3u); -} - -TEST_F(MissionAdaptersTest, InvalidOrderWithMissingEdgesCreatesNoMissions) -{ - auto order = makeOrder(4); - order.edges.pop_back(); - - EXPECT_TRUE(order_adapter.convert(order).empty()); -} - -TEST_F(MissionAdaptersTest, OrderSplitsAtNodeAction) -{ - auto order = makeOrder(5); - order.nodes[2].actions.push_back(makeAction("dock")); - - const auto missions = order_adapter.convert(order); - - ASSERT_EQ(missions.size(), 2u); - EXPECT_EQ(missions[0]->nodes.size(), 3u); - EXPECT_EQ(missions[1]->nodes.size(), 3u); -} - -TEST_F(MissionAdaptersTest, OrderCollectsAndSortsActions) -{ - auto order = makeOrder(2); - order.edges[0].actions.push_back(makeAction("edge")); - order.nodes[1].actions.push_back(makeAction("node")); - - const auto missions = order_adapter.convert(order); - - ASSERT_EQ(missions.size(), 1u); - ASSERT_EQ(missions.front()->actions.size(), 2u); - EXPECT_EQ(missions.front()->actions[0].type, ActionType::EDGE_ACTION); - EXPECT_EQ(missions.front()->actions[1].type, ActionType::NODE_ACTION); -} - -TEST_F(MissionAdaptersTest, ManagerRunsMissionLifecycle) -{ - MissionManager manager; - - manager.submit(goal_adapter.convert(makeGoal(1.0, 2.0))); - EXPECT_EQ(manager.state(), MissionState::QUEUED); - EXPECT_TRUE(manager.hasMission()); - - auto mission = manager.nextMission(); - ASSERT_NE(mission, nullptr); - EXPECT_EQ(manager.state(), MissionState::RUNNING); - - manager.onNavigationDone(); - EXPECT_EQ(manager.state(), MissionState::IDLE); - EXPECT_FALSE(manager.hasMission()); -} - -TEST_F(MissionAdaptersTest, ManagerHandlesPauseResumeCancelAndFailure) -{ - MissionManager manager; - - manager.submit(goal_adapter.convert(makeGoal(1.0, 1.0))); - manager.pause(); - EXPECT_EQ(manager.state(), MissionState::PAUSED); - - manager.resume(); - EXPECT_EQ(manager.state(), MissionState::QUEUED); - - manager.cancel(); - EXPECT_EQ(manager.state(), MissionState::CANCELLED); - EXPECT_FALSE(manager.hasMission()); - - manager.submit(goal_adapter.convert(makeGoal(2.0, 2.0))); - manager.nextMission(); - manager.onNavigationFailed(); - EXPECT_EQ(manager.state(), MissionState::FAILED); - EXPECT_FALSE(manager.hasMission()); -} - -TEST_F(MissionAdaptersTest, NavigationResultIsIgnoredOutsideRunningState) -{ - MissionManager manager; - - manager.submit(goal_adapter.convert(makeGoal(1.0, 1.0))); - manager.emergency(); - manager.onNavigationDone(); - EXPECT_EQ(manager.state(), MissionState::EMERGENCY); - - manager.onNavigationFailed(); - EXPECT_EQ(manager.state(), MissionState::EMERGENCY); - - manager.clearEmergency(); - manager.submit(goal_adapter.convert(makeGoal(2.0, 2.0))); - manager.cancel(); - manager.onNavigationDone(); - EXPECT_EQ(manager.state(), MissionState::CANCELLED); -} - -TEST_F(MissionAdaptersTest, EmergencyClearsAndBlocksNewMissionsUntilCleared) -{ - MissionManager manager; - - manager.submit(goal_adapter.convert(makeGoal(1.0, 1.0))); - manager.emergency(); - EXPECT_EQ(manager.state(), MissionState::EMERGENCY); - EXPECT_FALSE(manager.hasMission()); - - manager.submit(goal_adapter.convert(makeGoal(2.0, 2.0))); - EXPECT_EQ(manager.state(), MissionState::EMERGENCY); - EXPECT_FALSE(manager.hasMission()); - - manager.clearEmergency(); - manager.submit(goal_adapter.convert(makeGoal(3.0, 3.0))); - EXPECT_EQ(manager.state(), MissionState::QUEUED); - EXPECT_TRUE(manager.hasMission()); -} - -TEST_F(MissionAdaptersTest, EventProcessorProcessesGoalAndEmergency) -{ - MissionManager manager; - EventProcessor processor(manager); - - processor.start(); - processor.goalEvent(makeGoal(5.0, 6.0)); - EXPECT_TRUE(waitForState(manager, MissionState::QUEUED, std::chrono::milliseconds(250))); - - processor.emergencyEvent(); - EXPECT_TRUE(waitForState(manager, MissionState::EMERGENCY, std::chrono::milliseconds(250))); - - processor.goalEvent(makeGoal(7.0, 8.0)); - std::this_thread::sleep_for(std::chrono::milliseconds(50)); - EXPECT_EQ(manager.state(), MissionState::EMERGENCY); - - processor.clearEmergencyEvent(); - EXPECT_TRUE(waitForState(manager, MissionState::CLEAR_EMERGENCY, std::chrono::milliseconds(250))); - - processor.stop(); -} - -TEST_F(MissionAdaptersTest, MissionExecutorDispatchesEachMissionOnce) -{ - MissionManager manager; - MissionExecutor executor(manager); - std::atomic callback_count{0}; - - executor.setMissionCallback( - [&callback_count](const std::shared_ptr& mission) - { - ASSERT_NE(mission, nullptr); - ++callback_count; - }); - - manager.submit(goal_adapter.convert(makeGoal(10.0, 10.0))); - executor.start(); - - const auto deadline = std::chrono::steady_clock::now() + std::chrono::milliseconds(250); - while (callback_count.load() < 1 && std::chrono::steady_clock::now() < deadline) - std::this_thread::sleep_for(std::chrono::milliseconds(5)); - - manager.onNavigationDone(); - manager.submit(goal_adapter.convert(makeGoal(11.0, 11.0))); - - const auto second_deadline = std::chrono::steady_clock::now() + std::chrono::milliseconds(250); - while (callback_count.load() < 2 && std::chrono::steady_clock::now() < second_deadline) - std::this_thread::sleep_for(std::chrono::milliseconds(5)); - - executor.stop(); - - EXPECT_EQ(callback_count.load(), 2); -} - -} // namespace - -int main(int argc, char** argv) -{ - testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} diff --git a/test/mission_lifecycle_test.cpp b/test/mission_lifecycle_test.cpp new file mode 100644 index 0000000..0ec88ac --- /dev/null +++ b/test/mission_lifecycle_test.cpp @@ -0,0 +1,356 @@ +#include + +#include +#include + +#include +#include + +#include "goal_source_adapter.h" +#include "vda5050_source_adapter.h" +#include "mission_test_utils.h" + +namespace +{ +using namespace mission_adapters; +using mission_test::FakeNavigationClient; +using mission_test::makeGoal; +using mission_test::makeMission; +using mission_test::waitForState; + +/// Chờ tới khi predicate đúng hoặc hết hạn. Trả giá trị cuối cùng của predicate. +template +bool waitFor(Predicate predicate, std::chrono::milliseconds timeout) +{ + const auto deadline = std::chrono::steady_clock::now() + timeout; + while (std::chrono::steady_clock::now() < deadline) + { + if (predicate()) + return true; + + std::this_thread::sleep_for(std::chrono::milliseconds(5)); + } + + return predicate(); +} + +constexpr std::chrono::milliseconds kWaitTimeout{500}; + +class MissionLifecycleTest : public ::testing::Test +{ +protected: + void SetUp() override + { + // Đăng ký thẳng thay vì nạp .so: test này kiểm luồng mission, không kiểm đường Boost.DLL + // (việc đó thuộc plugin_registry_test). + ASSERT_TRUE(registry.registerAdapter(std::make_shared())); + ASSERT_TRUE(registry.registerAdapter(std::make_shared())); + } + + /// Một mission dựng thẳng, đóng gói trong vector để submit(). + std::vector> oneMission(double x, double y) + { + return {makeMission(x, y)}; + } + + PluginRegistry registry; +}; + +TEST_F(MissionLifecycleTest, EventProcessorProcessesGoalAndEmergency) +{ + MissionManager manager; + EventProcessor processor(manager, registry); + + processor.start(); + processor.goalEvent(makeGoal(5.0, 6.0)); + EXPECT_TRUE(waitForState(manager, MissionState::QUEUED, kWaitTimeout)); + + processor.emergencyEvent(); + EXPECT_TRUE(waitForState(manager, MissionState::EMERGENCY, kWaitTimeout)); + + processor.goalEvent(makeGoal(7.0, 8.0)); + std::this_thread::sleep_for(std::chrono::milliseconds(50)); + EXPECT_EQ(manager.state(), MissionState::EMERGENCY); + + processor.clearEmergencyEvent(); + EXPECT_TRUE(waitForState(manager, MissionState::CLEAR_EMERGENCY, kWaitTimeout)); + + processor.stop(); +} + +TEST_F(MissionLifecycleTest, MissionExecutorDispatchesEachMissionOnce) +{ + MissionManager manager; + MissionExecutor executor(manager); + FakeNavigationClient client; + + executor.setNavigationClient(&client); + manager.submit(oneMission(10.0, 10.0)); + executor.start(); + + ASSERT_TRUE(waitFor([&client] { return client.dispatchCount() == 1u; }, kWaitTimeout)); + + const auto first = client.dispatched().front(); + ASSERT_TRUE(manager.onNavigationDone(first->id)); + manager.submit(oneMission(11.0, 11.0)); + + ASSERT_TRUE(waitFor([&client] { return client.dispatchCount() == 2u; }, kWaitTimeout)); + + // Chặng thứ hai chưa xong -> không được giao thêm lần nào nữa. + std::this_thread::sleep_for(std::chrono::milliseconds(120)); + executor.stop(); + + EXPECT_EQ(client.dispatchCount(), 2u); + EXPECT_TRUE(client.cancelled().empty()); +} + +// ───────────────────────────────────────────────────────────────────────────── +// A3 — cancel/emergency ở tầng mission phải tới được navigation. +// ───────────────────────────────────────────────────────────────────────────── + +TEST_F(MissionLifecycleTest, CancelStopsNavigationExactlyOnce) +{ + MissionManager manager; + MissionExecutor executor(manager); + FakeNavigationClient client; + + executor.setNavigationClient(&client); + manager.submit(oneMission(1.0, 1.0)); + executor.start(); + + ASSERT_TRUE(waitFor([&client] { return client.dispatchCount() == 1u; }, kWaitTimeout)); + const MissionId running_id = client.dispatched().front()->id; + + manager.cancel(); + + ASSERT_TRUE(waitFor([&client] { return !client.cancelled().empty(); }, kWaitTimeout)); + std::this_thread::sleep_for(std::chrono::milliseconds(120)); + executor.stop(); + + ASSERT_EQ(client.cancelled().size(), 1u) << "cancelActive must be called exactly once"; + EXPECT_EQ(client.cancelled().front(), running_id); + EXPECT_EQ(manager.state(), MissionState::CANCELLED); +} + +TEST_F(MissionLifecycleTest, PreemptCancelsOldMissionBeforeDispatchingNewOne) +{ + MissionManager manager; + MissionExecutor executor(manager); + FakeNavigationClient client; + + executor.setNavigationClient(&client); + manager.submit(oneMission(1.0, 1.0)); + executor.start(); + + ASSERT_TRUE(waitFor([&client] { return client.dispatchCount() == 1u; }, kWaitTimeout)); + const MissionId old_id = client.dispatched().front()->id; + + // Order mới thay order cũ trong lúc chặng đầu đang chạy. + manager.submit(oneMission(2.0, 2.0)); + + ASSERT_TRUE(waitFor([&client] { return client.dispatchCount() == 2u; }, kWaitTimeout)); + executor.stop(); + + ASSERT_EQ(client.cancelled().size(), 1u) << "the replaced leg was not told to stop"; + EXPECT_EQ(client.cancelled().front(), old_id); + EXPECT_NE(client.dispatched().back()->id, old_id); +} + +TEST_F(MissionLifecycleTest, RejectedDispatchFailsMissionInsteadOfHanging) +{ + MissionManager manager; + MissionExecutor executor(manager); + FakeNavigationClient client; + + client.setAcceptDispatch(false); + executor.setNavigationClient(&client); + manager.submit(oneMission(3.0, 3.0)); + executor.start(); + + EXPECT_TRUE(waitForState(manager, MissionState::FAILED, kWaitTimeout)) + << "navigation rejected it yet the mission is still stuck in RUNNING"; + + executor.stop(); + EXPECT_EQ(client.dispatchCount(), 1u) << "a rejected mission was handed over again on the next " + "round"; +} + +TEST_F(MissionLifecycleTest, OrderProducingNoMissionLeavesQueueUntouched) +{ + MissionManager manager; + EventProcessor processor(manager, registry); + + processor.start(); + processor.goalEvent(makeGoal(4.0, 4.0)); + ASSERT_TRUE(waitForState(manager, MissionState::QUEUED, kWaitTimeout)); + + // Order thiếu edge -> convert() rỗng -> không được đụng vào hàng đợi hiện tại (A1). + auto invalid_order = mission_test::makeOrder(4); + invalid_order.edges.pop_back(); + processor.orderEvent(invalid_order); + + std::this_thread::sleep_for(std::chrono::milliseconds(80)); + processor.stop(); + + EXPECT_EQ(manager.state(), MissionState::QUEUED); + EXPECT_TRUE(manager.hasMission()) << "a failed order cleared the queue"; +} + +// ───────────────────────────────────────────────────────────────────────────── +// End-to-end: một Order đi hết đường qua cả ba thành phần. +// ───────────────────────────────────────────────────────────────────────────── + +/// Dựng bộ ba thành phần đã nối dây sẵn, dùng chung cho các test end-to-end bên dưới. +struct MissionStack +{ + explicit MissionStack(PluginRegistry& registry) + : processor(manager, registry) + , executor(manager) + { + executor.setNavigationClient(&client); + processor.start(); + executor.start(); + } + + ~MissionStack() + { + executor.stop(); + processor.stop(); + } + + MissionManager manager; + EventProcessor processor; + MissionExecutor executor; + FakeNavigationClient client; +}; + +TEST_F(MissionLifecycleTest, OrderRunsThreeLegsThenCompletes) +{ + MissionStack stack(registry); + + // Order 4 node, action tại node 1 và node 2 -> cắt thành 3 chặng. + auto order = mission_test::makeOrder(4); + order.nodes[1].actions.push_back(mission_test::makeAction("lift")); + order.nodes[2].actions.push_back(mission_test::makeAction("drop")); + + stack.processor.orderEvent(order); + + for (int leg = 0; leg < 3; ++leg) + { + const size_t expected = static_cast(leg) + 1; + ASSERT_TRUE(waitFor([&stack, expected] { return stack.client.dispatchCount() == expected; }, + kWaitTimeout)) + << "leg number " << leg << " was not handed over"; + + const auto mission = stack.client.dispatched().back(); + stack.processor.navDoneEvent(mission->id); + } + + EXPECT_TRUE(waitForState(stack.manager, MissionState::COMPLETED, kWaitTimeout)); + EXPECT_EQ(stack.client.dispatchCount(), 3u); + EXPECT_TRUE(stack.client.cancelled().empty()); +} + +TEST_F(MissionLifecycleTest, CancelMidOrderThenAcceptNewOrder) +{ + MissionStack stack(registry); + + auto order = mission_test::makeOrder(4); + order.nodes[1].actions.push_back(mission_test::makeAction("lift")); + order.nodes[2].actions.push_back(mission_test::makeAction("drop")); + + stack.processor.orderEvent(order); + ASSERT_TRUE(waitFor([&stack] { return stack.client.dispatchCount() == 1u; }, kWaitTimeout)); + + const MissionId running_id = stack.client.dispatched().front()->id; + stack.processor.cancelEvent(); + + ASSERT_TRUE(waitFor([&stack] { return !stack.client.cancelled().empty(); }, kWaitTimeout)); + EXPECT_EQ(stack.client.cancelled().front(), running_id); + EXPECT_TRUE(waitForState(stack.manager, MissionState::CANCELLED, kWaitTimeout)); + + // Sau khi huỷ vẫn nhận được order mới. + stack.processor.orderEvent(mission_test::makeOrder(2, "order_moi")); + + ASSERT_TRUE(waitFor([&stack] { return stack.client.dispatchCount() == 2u; }, kWaitTimeout)); + EXPECT_EQ(stack.manager.state(), MissionState::RUNNING); + EXPECT_NE(stack.client.dispatched().back()->id, running_id); +} + +// A5 end-to-end: huỷ ngay sau khi phát order thì không mission nào được chạy. +TEST_F(MissionLifecycleTest, OrderThenImmediateCancelDispatchesNothing) +{ + MissionStack stack(registry); + + stack.processor.orderEvent(mission_test::makeOrder(3)); + stack.processor.cancelEvent(); + + // Cho cả hai sự kiện chạy xong rồi mới kết luận. + ASSERT_TRUE(waitForState(stack.manager, MissionState::CANCELLED, kWaitTimeout)); + std::this_thread::sleep_for(std::chrono::milliseconds(120)); + + EXPECT_EQ(stack.client.dispatchCount(), 0u) + << "the cancel was processed before the order so the order still runs — the robot drives " + "what the user just cancelled"; + EXPECT_FALSE(stack.manager.hasMission()); +} + +TEST_F(MissionLifecycleTest, EmergencyOvertakesLongEventQueue) +{ + MissionStack stack(registry); + + // Nhồi hàng đợi bằng nhiều goal rồi mới bấm emergency. + for (int i = 0; i < 50; ++i) + stack.processor.goalEvent(makeGoal(i, i)); + + stack.processor.emergencyEvent(); + + EXPECT_TRUE(waitForState(stack.manager, MissionState::EMERGENCY, kWaitTimeout)) + << "emergency must queue-jump, not wait behind 50 events"; + EXPECT_FALSE(stack.manager.hasMission()); +} + +TEST_F(MissionLifecycleTest, ActionsReachNavigationIntactAndInOrder) +{ + MissionStack stack(registry); + + auto order = mission_test::makeOrder(3); + order.edges[0].sequenceId = 1; + order.edges[0].actions.push_back(mission_test::makeAction("beep")); + order.nodes[1].sequenceId = 2; + order.nodes[1].actions.push_back(mission_test::makeAction("lift")); + + stack.processor.orderEvent(order); + ASSERT_TRUE(waitFor([&stack] { return stack.client.dispatchCount() == 1u; }, kWaitTimeout)); + + const auto mission = stack.client.dispatched().front(); + ASSERT_EQ(mission->actions.size(), 2u) << "the action was lost on the way down to navigation"; + EXPECT_EQ(mission->actions[0].action.actionId, "beep"); + EXPECT_EQ(mission->actions[1].action.actionId, "lift"); + EXPECT_TRUE(mission->has_goal); +} + +TEST_F(MissionLifecycleTest, GoallessMissionReachesNavigationWithItsActions) +{ + MissionStack stack(registry); + + // Action ngay tại node xuất phát -> chặng đầu không có quãng đường nào để đi. + auto order = mission_test::makeOrder(3); + order.nodes[0].actions.push_back(mission_test::makeAction("pick_at_start")); + + stack.processor.orderEvent(order); + ASSERT_TRUE(waitFor([&stack] { return stack.client.dispatchCount() == 1u; }, kWaitTimeout)); + + const auto mission = stack.client.dispatched().front(); + EXPECT_FALSE(mission->has_goal); + ASSERT_EQ(mission->actions.size(), 1u); + EXPECT_EQ(mission->actions.front().action.actionId, "pick_at_start"); +} + +} // namespace + +int main(int argc, char** argv) +{ + testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} diff --git a/test/mission_manager_test.cpp b/test/mission_manager_test.cpp new file mode 100644 index 0000000..2b1eeb3 --- /dev/null +++ b/test/mission_manager_test.cpp @@ -0,0 +1,405 @@ +#include + +#include +#include +#include + +#include + +#include "mission_test_utils.h" + +namespace +{ +using namespace mission_adapters; +using mission_test::makeMission; +using mission_test::makeMissions; + +TEST(MissionManagerTest, ManagerRunsMissionLifecycle) +{ + MissionManager manager; + + manager.submit(std::vector>{makeMission(1.0, 2.0)}); + EXPECT_EQ(manager.state(), MissionState::QUEUED); + EXPECT_TRUE(manager.hasMission()); + + auto mission = manager.nextMission(); + ASSERT_NE(mission, nullptr); + EXPECT_NE(mission->id, kInvalidMissionId) << "submit must return a MissionId"; + EXPECT_EQ(manager.state(), MissionState::RUNNING); + + EXPECT_TRUE(manager.onNavigationDone(mission->id)); + EXPECT_EQ(manager.state(), MissionState::COMPLETED); + EXPECT_FALSE(manager.hasMission()); +} + +TEST(MissionManagerTest, ManagerHandlesPauseResumeCancelAndFailure) +{ + MissionManager manager; + + manager.submit(std::vector>{makeMission(1.0, 1.0)}); + manager.pause(); + EXPECT_EQ(manager.state(), MissionState::PAUSED); + + manager.resume(); + EXPECT_EQ(manager.state(), MissionState::QUEUED); + + manager.cancel(); + EXPECT_EQ(manager.state(), MissionState::CANCELLED); + EXPECT_FALSE(manager.hasMission()); + + manager.submit(std::vector>{makeMission(2.0, 2.0)}); + const auto mission = manager.nextMission(); + ASSERT_NE(mission, nullptr); + EXPECT_TRUE(manager.onNavigationFailed(mission->id)); + EXPECT_EQ(manager.state(), MissionState::FAILED); + EXPECT_FALSE(manager.hasMission()); +} + +TEST(MissionManagerTest, NavigationResultIsIgnoredOutsideRunningState) +{ + MissionManager manager; + + manager.submit(std::vector>{makeMission(1.0, 1.0)}); + const MissionId queued_id = manager.nextMission()->id; + + manager.emergency(); + EXPECT_FALSE(manager.onNavigationDone(queued_id)); + EXPECT_EQ(manager.state(), MissionState::EMERGENCY); + + EXPECT_FALSE(manager.onNavigationFailed(queued_id)); + EXPECT_EQ(manager.state(), MissionState::EMERGENCY); + + manager.clearEmergency(); + manager.submit(std::vector>{makeMission(2.0, 2.0)}); + manager.cancel(); + EXPECT_FALSE(manager.onNavigationDone(queued_id)); + EXPECT_EQ(manager.state(), MissionState::CANCELLED); +} + +TEST(MissionManagerTest, EmergencyClearsAndBlocksNewMissionsUntilCleared) +{ + MissionManager manager; + + manager.submit(std::vector>{makeMission(1.0, 1.0)}); + manager.emergency(); + EXPECT_EQ(manager.state(), MissionState::EMERGENCY); + EXPECT_FALSE(manager.hasMission()); + + manager.submit(std::vector>{makeMission(2.0, 2.0)}); + EXPECT_EQ(manager.state(), MissionState::EMERGENCY); + EXPECT_FALSE(manager.hasMission()); + + manager.clearEmergency(); + manager.submit(std::vector>{makeMission(3.0, 3.0)}); + EXPECT_EQ(manager.state(), MissionState::QUEUED); + EXPECT_TRUE(manager.hasMission()); +} + +// ───────────────────────────────────────────────────────────────────────────── +// A1 — submit rỗng không được đụng vào hàng đợi đang chạy. +// +// Một order lỗi từ fleet manager (convert() trả rỗng) không phải là lệnh "huỷ mọi thứ". Nếu nó xoá +// queue thì chặng đang chạy mất chủ: robot vẫn đi tới goal cũ vì không ai bảo navigation dừng, còn +// mission layer thì kẹt ở RUNNING mà không còn mission nào để hoàn tất. +// ───────────────────────────────────────────────────────────────────────────── + +TEST(MissionManagerTest, EmptySubmitLeavesRunningMissionUntouched) +{ + MissionManager manager; + + manager.submit(makeMissions(2)); + + const auto running = manager.nextMission(); + ASSERT_NE(running, nullptr); + ASSERT_EQ(manager.state(), MissionState::RUNNING); + + // Order lỗi -> convert() rỗng -> submit rỗng. + manager.submit({}); + + EXPECT_EQ(manager.state(), MissionState::RUNNING); + EXPECT_TRUE(manager.hasMission()) << "an empty submit wiped the running mission and the queue"; + EXPECT_EQ(manager.currentMissionId(), running->id) << "the running mission was replaced"; + EXPECT_EQ(manager.takePendingCancel(), kInvalidMissionId) + << "an empty submit must not ask navigation to stop"; + + // Chặng thứ hai vẫn phải còn trong hàng đợi. + EXPECT_TRUE(manager.onNavigationDone(running->id)); + EXPECT_EQ(manager.state(), MissionState::QUEUED); +} + +// ───────────────────────────────────────────────────────────────────────────── +// A2 — outcome phải mang MissionId. +// +// Không có ID thì kết quả của chặng cũ (đến trễ, sau khi order đã bị thay) được ghi nhận cho chặng +// mới: mission mới "hoàn thành" trong khi robot chưa hề chạy nó. +// ───────────────────────────────────────────────────────────────────────────── + +TEST(MissionManagerTest, StaleOutcomeOfPreemptedMissionIsRejected) +{ + MissionManager manager; + + manager.submit(makeMissions(1)); + const auto first = manager.nextMission(); + ASSERT_NE(first, nullptr); + + // Order mới thay order cũ trong lúc chặng đầu đang chạy. + manager.submit(makeMissions(1)); + const auto second = manager.nextMission(); + ASSERT_NE(second, nullptr); + ASSERT_NE(first->id, second->id); + + // Outcome của chặng ĐẦU về muộn, sau khi chặng hai đã bắt đầu. + EXPECT_FALSE(manager.onNavigationDone(first->id)); + EXPECT_EQ(manager.state(), MissionState::RUNNING) << "a late outcome completed the wrong " + "mission"; + EXPECT_EQ(manager.currentMissionId(), second->id); + + // Outcome đúng của chặng hai vẫn được nhận bình thường. + EXPECT_TRUE(manager.onNavigationDone(second->id)); + EXPECT_EQ(manager.state(), MissionState::COMPLETED); +} + +TEST(MissionManagerTest, MissionIdsAreUniqueAndMonotonic) +{ + MissionManager manager; + + manager.submit(makeMissions(3)); + + MissionId previous = kInvalidMissionId; + for (int i = 0; i < 3; ++i) + { + const auto mission = manager.nextMission(); + ASSERT_NE(mission, nullptr) << "leg number " << i; + EXPECT_GT(mission->id, previous); + previous = mission->id; + + ASSERT_TRUE(manager.onNavigationDone(mission->id)); + } + + EXPECT_EQ(manager.state(), MissionState::COMPLETED); +} + +TEST(MissionManagerTest, RunningMissionIsDispatchedOnlyOnce) +{ + MissionManager manager; + + manager.submit(makeMissions(2)); + + const auto first = manager.nextMission(); + ASSERT_NE(first, nullptr); + + // M6: trong lúc RUNNING không có mission mới nào để giao. + EXPECT_EQ(manager.nextMission(), nullptr); + EXPECT_EQ(manager.nextMission(), nullptr); + + ASSERT_TRUE(manager.onNavigationDone(first->id)); + const auto second = manager.nextMission(); + ASSERT_NE(second, nullptr); + EXPECT_NE(second->id, first->id); +} + +// ───────────────────────────────────────────────────────────────────────────── +// A3 — mission layer phải có đường bảo navigation dừng. +// ───────────────────────────────────────────────────────────────────────────── + +TEST(MissionManagerTest, CancelRequestsNavigationStopOfRunningMission) +{ + MissionManager manager; + + manager.submit(makeMissions(2)); + const auto running = manager.nextMission(); + ASSERT_NE(running, nullptr); + + manager.cancel(); + + EXPECT_EQ(manager.takePendingCancel(), running->id); + EXPECT_EQ(manager.takePendingCancel(), kInvalidMissionId) << "the stop request was taken twice"; + EXPECT_EQ(manager.state(), MissionState::CANCELLED); + EXPECT_FALSE(manager.hasMission()); +} + +TEST(MissionManagerTest, EmergencyRequestsNavigationStopOfRunningMission) +{ + MissionManager manager; + + manager.submit(makeMissions(1)); + const auto running = manager.nextMission(); + ASSERT_NE(running, nullptr); + + manager.emergency(); + + EXPECT_EQ(manager.takePendingCancel(), running->id); + EXPECT_EQ(manager.state(), MissionState::EMERGENCY); +} + +TEST(MissionManagerTest, PreemptRequestsNavigationStopOfReplacedMission) +{ + MissionManager manager; + + manager.submit(makeMissions(1)); + const auto first = manager.nextMission(); + ASSERT_NE(first, nullptr); + + manager.submit(makeMissions(1)); + + EXPECT_EQ(manager.takePendingCancel(), first->id) + << "a new order replaced the old one without telling navigation to stop the old leg"; + EXPECT_EQ(manager.state(), MissionState::QUEUED); +} + +TEST(MissionManagerTest, SubmitWhilePausedKeepsRobotStopped) +{ + MissionManager manager; + + manager.submit(makeMissions(1)); + manager.pause(); + + manager.submit(makeMissions(1)); + + EXPECT_EQ(manager.state(), MissionState::PAUSED) << "a new order started running on its own " + "while PAUSED"; + EXPECT_EQ(manager.nextMission(), nullptr); + + manager.resume(); + EXPECT_EQ(manager.state(), MissionState::QUEUED); + EXPECT_NE(manager.nextMission(), nullptr); +} + +// ───────────────────────────────────────────────────────────────────────────── +// M8 — một chặng hỏng thì phần còn lại của hàng đợi đi đâu. +// ───────────────────────────────────────────────────────────────────────────── + +TEST(MissionManagerTest, FailureClearsRemainingQueueByDefault) +{ + MissionManager manager; // clear_queue_on_failure mặc định = true + + manager.submit(makeMissions(3)); + const auto first = manager.nextMission(); + ASSERT_NE(first, nullptr); + + ASSERT_TRUE(manager.onNavigationFailed(first->id)); + + // Tuyến tuần tự: không tới được chặng 1 thì chặng 2 nằm sau nó cũng không còn ý nghĩa. + EXPECT_EQ(manager.state(), MissionState::FAILED); + EXPECT_FALSE(manager.hasMission()); +} + +TEST(MissionManagerTest, FailureKeepsQueueWhenConfigured) +{ + MissionConfig config; + config.clear_queue_on_failure = false; // các mission trong hàng đợi độc lập với nhau + MissionManager manager(config); + + manager.submit(makeMissions(3)); + const auto first = manager.nextMission(); + ASSERT_NE(first, nullptr); + + ASSERT_TRUE(manager.onNavigationFailed(first->id)); + + EXPECT_EQ(manager.state(), MissionState::QUEUED); + EXPECT_TRUE(manager.hasMission()); + + const auto second = manager.nextMission(); + ASSERT_NE(second, nullptr); + EXPECT_NE(second->id, first->id); +} + +TEST(MissionManagerTest, LastMissionFailureEndsInFailedEvenWhenQueueKept) +{ + MissionConfig config; + config.clear_queue_on_failure = false; + MissionManager manager(config); + + manager.submit(makeMissions(1)); + const auto only = manager.nextMission(); + ASSERT_NE(only, nullptr); + + ASSERT_TRUE(manager.onNavigationFailed(only->id)); + EXPECT_EQ(manager.state(), MissionState::FAILED); +} + +// ───────────────────────────────────────────────────────────────────────────── +// M7 — mission_timeout là lưới cuối khi navigation không bao giờ báo kết quả về. +// ───────────────────────────────────────────────────────────────────────────── + +TEST(MissionManagerTest, TimeoutDisabledByDefaultLetsMissionRunOn) +{ + MissionManager manager; + + manager.submit(makeMissions(1)); + ASSERT_NE(manager.nextMission(), nullptr); + + // waitForWork phải chặn (không có việc); wakeUp là đường ra duy nhất. + std::thread waker([&manager] { + std::this_thread::sleep_for(std::chrono::milliseconds(80)); + manager.wakeUp(); + }); + + EXPECT_FALSE(manager.waitForWork()); + waker.join(); + + EXPECT_EQ(manager.state(), MissionState::RUNNING) << "the mission was cancelled although the " + "timeout is off"; +} + +TEST(MissionManagerTest, TimeoutFailsMissionAndRequestsNavigationStop) +{ + MissionConfig config; + config.mission_timeout = 0.15; // [s] + MissionManager manager(config); + + manager.submit(makeMissions(1)); + const auto running = manager.nextMission(); + ASSERT_NE(running, nullptr); + + const auto started = std::chrono::steady_clock::now(); + + // waitForWork tự thức dậy đúng lúc hết hạn và biến quá hạn thành việc cần làm. + ASSERT_TRUE(manager.waitForWork()); + + const double elapsed = + std::chrono::duration(std::chrono::steady_clock::now() - started).count(); + EXPECT_GE(elapsed, 0.15) << "the leg was cancelled before it expired"; + + EXPECT_EQ(manager.state(), MissionState::FAILED); + EXPECT_EQ(manager.takePendingCancel(), running->id) + << "it expired but navigation was not told to stop — the robot keeps driving to the old " + "goal"; +} + +TEST(MissionManagerTest, TimeoutIsMeasuredPerMissionNotPerQueue) +{ + MissionConfig config; + config.mission_timeout = 0.2; // [s] + config.clear_queue_on_failure = false; + MissionManager manager(config); + + manager.submit(makeMissions(2)); + + const auto first = manager.nextMission(); + ASSERT_NE(first, nullptr); + + // Chặng đầu xong sớm; mốc thời gian phải được gieo lại cho chặng hai. + std::this_thread::sleep_for(std::chrono::milliseconds(120)); + ASSERT_TRUE(manager.onNavigationDone(first->id)); + + const auto second = manager.nextMission(); + ASSERT_NE(second, nullptr); + + // Nếu mốc không được gieo lại, chặng hai sẽ hết hạn gần như tức thì. + const auto started = std::chrono::steady_clock::now(); + ASSERT_TRUE(manager.waitForWork()); + const double elapsed = + std::chrono::duration(std::chrono::steady_clock::now() - started).count(); + + EXPECT_GE(elapsed, 0.19) << "the second leg inherited the clock of the first one"; + EXPECT_EQ(manager.takePendingCancel(), second->id); +} + +} // namespace + +int main(int argc, char** argv) +{ + testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} diff --git a/test/mission_test_utils.h b/test/mission_test_utils.h new file mode 100644 index 0000000..4b23020 --- /dev/null +++ b/test/mission_test_utils.h @@ -0,0 +1,177 @@ +/********************************************************************* + * + * Helper dùng chung cho test của gói: dựng goal/order giả và chờ trạng thái. + * + *********************************************************************/ +#ifndef MISSION_ADAPTERS_TEST_MISSION_TEST_UTILS_H_ +#define MISSION_ADAPTERS_TEST_MISSION_TEST_UTILS_H_ + +#include +#include +#include +#include +#include +#include + +#include + +namespace mission_test +{ + +/** + * @brief NavigationClient giả: ghi lại mọi lệnh xuống navigation để test kiểm thứ tự và số lần. + * + * Không mô phỏng chuyển động — test tự quyết định khi nào outcome quay về. + */ +class FakeNavigationClient : public mission_adapters::NavigationClient +{ +public: + bool dispatch(const std::shared_ptr& mission) override + { + std::lock_guard lock(mutex_); + dispatched_.push_back(mission); + return accept_dispatch_; + } + + void cancelActive(mission_adapters::MissionId id) override + { + std::lock_guard lock(mutex_); + cancelled_.push_back(id); + } + + /// Ép navigation từ chối mọi mission tiếp theo. + void setAcceptDispatch(bool accept) + { + std::lock_guard lock(mutex_); + accept_dispatch_ = accept; + } + + std::vector> dispatched() const + { + std::lock_guard lock(mutex_); + return dispatched_; + } + + std::vector cancelled() const + { + std::lock_guard lock(mutex_); + return cancelled_; + } + + size_t dispatchCount() const + { + std::lock_guard lock(mutex_); + return dispatched_.size(); + } + +private: + mutable std::mutex mutex_; + std::vector> dispatched_; + std::vector cancelled_; + bool accept_dispatch_ = true; +}; + + +/// @brief Goal hợp lệ: quaternion đã chuẩn hoá (w=1) để qua được validate() của adapter. +inline robot_geometry_msgs::PoseStamped makeGoal(double x, double y) +{ + robot_geometry_msgs::PoseStamped goal; + goal.header.frame_id = "map"; + goal.pose.position.x = x; + goal.pose.position.y = y; + goal.pose.orientation.w = 1.0; + return goal; +} + +/// @brief Mission dựng thẳng, không qua adapter — dùng cho test của MissionManager/Executor. +inline std::shared_ptr makeMission(double x, double y) +{ + auto mission = std::make_shared(); + mission->type = mission_adapters::MissionType::SIMPLE_GOAL; + mission->goal = makeGoal(x, y); + return mission; +} + +/// @brief n mission độc lập, goal khác nhau. +inline std::vector> makeMissions(int count) +{ + std::vector> missions; + missions.reserve(static_cast(count)); + for (int i = 0; i < count; ++i) + missions.push_back(makeMission(i, i)); + + return missions; +} + +inline robot_protocol_msgs::Action makeAction(const std::string& id) +{ + robot_protocol_msgs::Action action; + action.actionId = id; + action.actionType = "TEST"; + return action; +} + +/// @brief Node đã released (base). Order thật của fleet manager luôn có ít nhất phần base. +inline robot_protocol_msgs::Node makeNode(int sequence_id, bool add_action = false) +{ + robot_protocol_msgs::Node node; + node.sequenceId = sequence_id; + node.nodeId = "node_" + std::to_string(sequence_id); + node.released = true; + node.nodePosition.x = sequence_id; + node.nodePosition.y = sequence_id; + + if (add_action) + node.actions.push_back(makeAction("node_action_" + std::to_string(sequence_id))); + + return node; +} + +inline robot_protocol_msgs::Edge makeEdge(int sequence_id, bool add_action = false) +{ + robot_protocol_msgs::Edge edge; + edge.sequenceId = sequence_id; + edge.edgeId = "edge_" + std::to_string(sequence_id); + edge.released = true; + + if (add_action) + edge.actions.push_back(makeAction("edge_action_" + std::to_string(sequence_id))); + + return edge; +} + +inline robot_protocol_msgs::Order makeOrder(int node_count, const std::string& order_id = "order_1", + std::uint32_t order_update_id = 0) +{ + robot_protocol_msgs::Order order; + order.orderId = order_id; + order.orderUpdateId = order_update_id; + + for (int i = 0; i < node_count; ++i) + order.nodes.push_back(makeNode(i)); + + for (int i = 0; i < node_count - 1; ++i) + order.edges.push_back(makeEdge(i)); + + return order; +} + +inline bool waitForState(mission_adapters::MissionManager& manager, + mission_adapters::MissionState expected, + std::chrono::milliseconds timeout) +{ + const auto deadline = std::chrono::steady_clock::now() + timeout; + while (std::chrono::steady_clock::now() < deadline) + { + if (manager.state() == expected) + return true; + + std::this_thread::sleep_for(std::chrono::milliseconds(5)); + } + + return manager.state() == expected; +} + +} // namespace mission_test + +#endif // MISSION_ADAPTERS_TEST_MISSION_TEST_UTILS_H_ diff --git a/test/plugin_registry_test.cpp b/test/plugin_registry_test.cpp new file mode 100644 index 0000000..3520f0f --- /dev/null +++ b/test/plugin_registry_test.cpp @@ -0,0 +1,287 @@ +/********************************************************************* + * + * Kiểm đường nạp plugin thật: YAML -> library_path -> Boost.DLL -> schema. + * + * Test này cần PNKX_NAV_CORE_CONFIG_DIR trỏ vào test/config của gói: + * + * PNKX_NAV_CORE_CONFIG_DIR=src/AMR_T800/Test/mission_adapters/test/config \ + * ./devel/lib/mission_adapters/plugin_registry_test + * + *********************************************************************/ +#include + +#include +#include +#include +#include + +#include + +#include +#include + +#include "mission_test_utils.h" + +namespace +{ +using namespace mission_adapters; + +/** + * @brief Nguồn mission thứ ba, viết hoàn toàn trong test. + * + * Sự tồn tại của nó là bài kiểm tra thật cho tính plugin: thêm một loại nguồn mới mà không sửa file + * nào trong `src/` của gói. + */ +class DummySourceAdapter : public MissionSourceAdapter +{ +public: + static constexpr const char* kSchema = "test.dummy"; + + bool configure(const std::string& name, robot::NodeHandle& nh) override + { + (void)nh; + name_ = name; + return true; + } + + std::string schema() const override { return kSchema; } + + bool validate(const MissionRequest& request, std::string& reason) const override + { + if (request.raw_payload.empty()) + { + reason = "raw_payload is empty"; + return false; + } + return true; + } + + ConversionResult convert(const MissionRequest& request) override + { + (void)request; + auto mission = std::make_shared(); + mission->type = MissionType::SIMPLE_GOAL; + + ConversionResult result; + result.missions.push_back(mission); + return result; + } + +private: + std::string name_; +}; + +class PluginRegistryTest : public ::testing::Test +{ +protected: + robot::NodeHandle nh; +}; + +// ── Đường nạp bình thường ──────────────────────────────────────────────────────────────────────── + +TEST_F(PluginRegistryTest, LoadsBothSourcesFromConfig) +{ + PluginRegistry registry; + + ASSERT_TRUE(registry.loadFromConfig(nh)) + << "could not load the plugin — check PNKX_NAV_CORE_CONFIG_DIR and devel/lib"; + + EXPECT_EQ(registry.size(), 2u); + EXPECT_NE(registry.find(schema::kPoseStamped), nullptr); + EXPECT_NE(registry.find(schema::kVda5050Order), nullptr); + EXPECT_EQ(registry.find("does.not.exist"), nullptr); +} + +TEST_F(PluginRegistryTest, LoadedAdapterConvertsRealPayload) +{ + PluginRegistry registry; + ASSERT_TRUE(registry.loadFromConfig(nh)); + + auto* adapter = registry.find(schema::kPoseStamped); + ASSERT_NE(adapter, nullptr); + + const auto request = MissionRequest::fromPose(mission_test::makeGoal(3.0, 4.0)); + + std::string reason; + ASSERT_TRUE(adapter->validate(request, reason)) << reason; + + const auto result = adapter->convert(request); + ASSERT_EQ(result.missions.size(), 1u); + EXPECT_DOUBLE_EQ(result.missions.front()->goal.pose.position.x, 3.0); +} + +// ── Các cách hỏng, đều phải báo lỗi rõ ràng chứ không crash ────────────────────────────────────── + +TEST_F(PluginRegistryTest, MissingLibraryPathKeyFailsCleanly) +{ + PluginRegistry registry; + + EXPECT_FALSE(registry.loadFromConfig(nh, "registry_test_missing_library_path")); + EXPECT_EQ(registry.size(), 0u); +} + +TEST_F(PluginRegistryTest, MissingLibraryFileFailsCleanly) +{ + PluginRegistry registry; + + EXPECT_FALSE(registry.loadFromConfig(nh, "registry_test_missing_library_file")); + EXPECT_EQ(registry.size(), 0u); +} + +TEST_F(PluginRegistryTest, WrongSymbolNameFailsCleanly) +{ + PluginRegistry registry; + + // Thư viện có thật, symbol thì không: import_alias ném system_error, registry phải nuốt và báo. + EXPECT_FALSE(registry.loadFromConfig(nh, "registry_test_wrong_symbol")); + EXPECT_EQ(registry.size(), 0u); +} + +TEST_F(PluginRegistryTest, DuplicateSchemaIsRejected) +{ + PluginRegistry registry; + + // Hai instance cùng khai schema "geometry.pose_stamped": cái thứ hai bị từ chối thay vì ghi đè + // im lặng, vì định tuyến khi đó sẽ phụ thuộc thứ tự nạp. + EXPECT_FALSE(registry.loadFromConfig(nh, "registry_test_duplicate_schema")); + EXPECT_EQ(registry.size(), 1u); +} + +TEST_F(PluginRegistryTest, EntryWithoutTypeFailsCleanly) +{ + PluginRegistry registry; + + EXPECT_FALSE(registry.loadFromConfig(nh, "registry_test_entry_without_type")); + EXPECT_EQ(registry.size(), 0u); +} + +TEST_F(PluginRegistryTest, MissingSourceListFailsCleanly) +{ + PluginRegistry registry; + + EXPECT_FALSE(registry.loadFromConfig(nh, "registry_test_empty")); + EXPECT_EQ(registry.size(), 0u); +} + +// ── Đăng ký trực tiếp (nguồn biên dịch thẳng vào host, hoặc test) ─────────────────────────────── + +TEST_F(PluginRegistryTest, RejectsNullAndDuplicateManualRegistration) +{ + PluginRegistry registry; + + EXPECT_FALSE(registry.registerAdapter(nullptr)); + + auto first = std::make_shared(); + EXPECT_TRUE(registry.registerAdapter(first)); + + auto second = std::make_shared(); + EXPECT_FALSE(registry.registerAdapter(second)) << "two adapters with the same schema were both " + "accepted"; + + EXPECT_EQ(registry.size(), 1u); +} + +/** + * Nguồn thứ ba đi hết đường: đăng ký -> EventProcessor định tuyến theo schema -> mission vào hàng + * đợi. Không có dòng nào trong `src/` của gói biết tới DummySourceAdapter. + */ +TEST_F(PluginRegistryTest, ThirdPartyAdapterFlowsThroughCoreUnchanged) +{ + PluginRegistry registry; + ASSERT_TRUE(registry.registerAdapter(std::make_shared())); + + MissionManager manager; + EventProcessor processor(manager, registry); + processor.start(); + + processor.submitRequest( + MissionRequest::fromRaw(DummySourceAdapter::kSchema, "{\"job\":\"pick\"}")); + + EXPECT_TRUE(mission_test::waitForState(manager, MissionState::QUEUED, + std::chrono::milliseconds(500))); + + // Payload không hợp lệ -> validate() chặn -> hàng đợi không đổi (A1). + processor.submitRequest(MissionRequest::fromRaw(DummySourceAdapter::kSchema, "")); + std::this_thread::sleep_for(std::chrono::milliseconds(80)); + + EXPECT_EQ(manager.state(), MissionState::QUEUED); + EXPECT_TRUE(manager.hasMission()); + + processor.stop(); +} + +/** + * @brief Plugin hỏng: sinh mission không goal và cũng không action. + * + * Core phải chặn, vì chặng như vậy không có việc gì để làm và sẽ không bao giờ báo kết quả về — + * mission layer kẹt RUNNING vĩnh viễn. + */ +class EmptyMissionAdapter : public MissionSourceAdapter +{ +public: + static constexpr const char* kSchema = "test.empty_mission"; + + bool configure(const std::string&, robot::NodeHandle&) override { return true; } + std::string schema() const override { return kSchema; } + bool validate(const MissionRequest&, std::string&) const override { return true; } + + ConversionResult convert(const MissionRequest&) override + { + auto mission = std::make_shared(); + mission->has_goal = false; // và actions rỗng + + ConversionResult result; + result.missions.push_back(mission); + return result; + } +}; + +TEST_F(PluginRegistryTest, MissionWithoutGoalAndWithoutActionIsRejected) +{ + PluginRegistry registry; + ASSERT_TRUE(registry.registerAdapter(std::make_shared())); + + MissionManager manager; + EventProcessor processor(manager, registry); + + processor.start(); + processor.submitRequest(MissionRequest::fromRaw(EmptyMissionAdapter::kSchema, "payload")); + std::this_thread::sleep_for(std::chrono::milliseconds(80)); + processor.stop(); + + EXPECT_EQ(manager.state(), MissionState::IDLE); + EXPECT_FALSE(manager.hasMission()); +} + +TEST_F(PluginRegistryTest, UnknownSchemaIsIgnoredNotCrashing) +{ + PluginRegistry registry; + MissionManager manager; + EventProcessor processor(manager, registry); + + processor.start(); + processor.submitRequest(MissionRequest::fromRaw("nobody.handles.this", "payload")); + std::this_thread::sleep_for(std::chrono::milliseconds(80)); + processor.stop(); + + EXPECT_EQ(manager.state(), MissionState::IDLE); + EXPECT_FALSE(manager.hasMission()); +} + +} // namespace + +int main(int argc, char** argv) +{ + // Test tự trỏ vào cây config và thư mục .so của chính nó, để chạy được cả qua ctest lẫn khi gọi + // thẳng binary (đúng cách test_costmap đang làm). overwrite = 0 nên biến môi trường do người + // chạy đặt vẫn thắng. +#ifdef MISSION_ADAPTERS_TEST_CONFIG_DIR + setenv("PNKX_NAV_CORE_CONFIG_DIR", MISSION_ADAPTERS_TEST_CONFIG_DIR, 0); +#endif +#ifdef MISSION_ADAPTERS_TEST_LIBRARY_DIR + setenv("PNKX_NAV_CORE_LIBRARY_PATH", MISSION_ADAPTERS_TEST_LIBRARY_DIR, 0); +#endif + + testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +}

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 K2eN-Y`TqgJC_pU$ literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/libmission_adapters_goal_source.so b/build-standalone-codex-5j6ZZh/libmission_adapters_goal_source.so new file mode 100755 index 0000000000000000000000000000000000000000..560fda04b31d082edd9e13ea510d3e1327044d93 GIT binary patch literal 292392 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 Ig6NE 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μkN@`~S{(VABdS=yLXpe~N@rqf-v$IUg= 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 literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/libmission_adapters_vda5050_source.so b/build-standalone-codex-5j6ZZh/libmission_adapters_vda5050_source.so new file mode 100755 index 0000000000000000000000000000000000000000..c2e9257647ada6fea2f104f2cef430cb57c7a8c1 GIT binary patch literal 902496 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ৱ%gq^}offqQS&lQBeAIfW77{W>YY?6gI0 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

T!_JqJQW4SFH<_FGU7{Mp&^2NtoA^~Ur z8BfsDlT^d(7zNjW!9Ky(L@Uhc_wgV??2Pf_r86=yS)as* zNp~11!(o7ifKONnrQ{~r{ePcI1Zb_^_1YkeZXcbYPR>!qFvJFILXi^L>5I4L40ifh zC1u)nk4$saOnn@IZF2rsV&2gFl|MkqDHUqKiwbfxHSapj)iPk|$;yzi1Zj}NpHA5` zb@)a@D-2>wg!sKUNRuqGNSHX{!O1CM&?}1)TSf#g0F9!f`c-DPiD3 z&6E*8SQ>Klo0hSxm9)ke@fANfZZT#rh0Mjf_3+S9ETy)EqU$z`4VDkLuw*UhBS!&~ z_GAdJmgvXNKVeI?c;|2L>PW;EGBX8F-x+sXTq5&t{G;d*%C5dR0m;reO^ z=k#zLtZ;ZmS5* zIM?Sd4F4m9r5!$IIJeK?kS03xuv|8ieMS+E`g8kCWOy!wW%^YN=lWd1aBiO_!qG#y zJ4tQ_qdy74GX0edKa}D3GW=wQZ)W%@41bnz^h)6WX0pp}Mt>@!|B&IQG5nwqFoQ$; zjAr;qhM&&xGYH4zFu$i~!yj-3jQ$KpKT)CIK=cA1C@78T}YW zzmnl+G5i}0AItFj8Gbgyf6DMYhCk16tYfl#dl{b3@VyK#VECbEcyQ?9y|Xf%;}|}U z;bRzH$neV<&g*T8;k@2n&+y?aom&~s)47}BygmMm;hg?uhI6^^F`V1&sA0kk!VcVS zV;RovHihBbZdWp#+pU%1+-{2)&h2n5!;6@G?jjr@PrG}7(I3X>|H$wo8GgtCc78D( zG>I(t!wE<1H;n#hM*jlC!wl!?oJKg_5B?&fKbxih62pN^IP6AV23$I7W)|Yx0hf0m zOCNFU2bK__yw@4=U$JzC!!tV62h*4NmFXZUCLwX8Lx=dm@L%HRAqWm}OjF{gBM1&{ z@FED8xB%gg)Klh1`Vv2c2&Fy}|1{w|Uzp#c2@jJm>E(UeqZRxVdd^euGwB)oaC9=A zeEZQVC12ul9urk?X_smRFQ@0(3SL3aa}<0AJvS-%OnPot@XP3Vk%GtRd5MBI((`f! zhwIISTchBe^t@KV7t`}P1;3u2*DLrkdfuquE9rTYf`5gcyA}L)dfuwwU#I8o3jQs6 z-l5?4(DN<@-$2hj3jRZS?p5%I={c8ttp6`VWii$NZlcR3U)HPl=s8EhhadsCk+$d5 z&l3m_D|iXvqZPc7@H_=yLU@USKR|e?f^Q={s^D)EUajDJ37@UtM`H&9ZjSitw!0F- zn-qLD;q3~(obW{ozKQT93f@Ebas?05{9uiOR}sEe!RHXZPQgD%_<99jL-jWl;MY;a zNb<4z{T66szs>RA8SvK(`0EDzPX@flfWOP|W0{`44Ci{jXTbkuz&|wL|1seB?ys}Y zM+_g$^vr?+lk{@FhIZb~==r=co6%RYbPi(pl?*?a;d0)A>HnFfFXs`64`cL?vUEPh z@XZY8?<2=E{BJD%u?)vG6Pe%h8P3zkz6BkKv~bNt&dYf@ewyjS?Ze++czxjSeLS6! zES)kT)t;XhGrW=E{5^}OgJZJH*C~wt9EMM1__++9&hQtQeXe5od5r!>hEHHPFGpT3 zr!o2q7(Lg&jNvCU`bi8gWcW)=Po7RWqv!Y(hRgRRtZ!2pUd+;e)sX&lM$g;P42JW1 zRn72=So#++youp83{Nq9jEX5{9=jJi+k!4Cn1M*$D0w$N2`-KeW?TF`hDNE;EM!$^VT+bUB&g;WX4CnO|-w|bdIxn6?pbS1-YW%N9q2N=%jf68!9|0=^d{aXy@^uu6GL8t1&=Luh7 zdY)~Q3;LTGp2zU7GF+}d0VLj!3bSp(OBwwwjGo(P4a2|6=x=5CcNl&f!#6Sfc7|_e z_*#blmf`=y@OK&hHHLqR+3gO7e}>_AGW=MEf1Tl@8U781k7GEm|0N9P^^ku*y^EzY zhUveK;c`6^%l(@S=jG1n$FX$2#pro^yqn>?U4Mt+yr1DX?;qZTJj!;*=ONQrI$vb^ ze3#+77=91K|H<(63_qONljDU9=lU#UI4}2G8P3PGA2OVm`%f6o%U!;=V!7~g|0Sd6 z)B4uui_6ot`SLSe)Yp)h*uD2(`F6h^O` z!idW`Dnh&P4>-i-7%c!)930|pB4qywGd#)gQiiuPd=A6qS_(!lVR$E_U&ru;4DV+6 zB8Kl`xO|5a(Wp2$^sW{m`%jqRpJR9_!>?iZ9EMX+#NMFb*AWlSNzkDu*ZS}o+dew< zmSBL~8w~%v1i>E~vL7(|3k*M*;Y%4lnc+7uJjw6_Nft)m!0=^^el^2yWcUV#-^B23 z3}4RhcNo5c;lqd852%WqQz0Vvt02A-0dkd$9^>vKd?v%cB#FV7`&f|n%M8DT(XV0n zgAA8zcNqNw!*6EvzhgMcjZoZ24F4*lKX#b?fco6R@N*e1-^DQca)#f==o1V_xpLmH zgyFX{difm*<*sFTH>3X_hVNqd*BEY5e}?JY!SI6^j{00maibZ2C!>!tTz&(`=q84L zgV8T%_+1QN&+v5&-^%cBGQ5Z3-(vV*8IJm2NpU&UDPw-W&FJ$OemBFb8U7uHw=?{^ z3}3_Wdl*xpx4gs~Ila7UJy;{{aHz)-e2j z34*_o;Tsvgo#8)ZcrU}{ngd4X(BOyq|A^7&G5kS>S2O$}hPN~PVTP|^_#+J8$nZ@J z-_Gzy8Q#nA#~7Y-u>FAg|Cr%<41b*A)eQd$!!Kbt*3UMITf}g=CWBFH8U8b(MQ;|eaoO}?3-$j6Vd#x!__GYpXE>&_p5iJQzKzkhF#MMc?_xNnvw`An zVfe2Y{eukuHN$_xa7<@A#qD6Y#4u_P!=EEs^hVMo67BFj!%G^m{|3eNFnkxIA3nlRd&{zrzlFkH&S=v55= z6Qke2@INzr8^hmZ_&W^mVfgSI`vLWTi{WD!{x-ua8NQq0EewB$;j0+_F2gr4{4WgO z#_;zT{tm-?89w|l`vLX;E5pYy{C$R3GW>50Z(;Zc3}40YzcYLT!~enXZ4Cb>!{1@} z9)=G;+nmedH)^TxwthIpKFbUQ|)cPNrvE7 zmiSosc}~h2+W<$rSYzjQc3N=XAfWh+p|KrFLXd83?9$5o61a?ze##Svn{pQRHXrTIzzLSWKmcA33!(w!n#U$m3|Mh$(>I zIQbay3>7?vg;*4ehTQltaFueQj&5)Til!NWS~x3qNHG@WLu=6z5lil5_pCDKi2bxl`Dn&CqubDS1>i!!x?jn>J#lLIJ_2a z4#uHXr=O13)AOch(ljg$lkXnPfwJM%xQgA=TwbfOqV|Mg-5r#+mZ~*%^Bi@~!7f^=io_3l-b2IoEcHoojJhu*Nj2%2lc@PN9qU>W9z4?M}Yyfu;s%d1fN5;NW>004x zGqw8yD8kN`^UR5KeM;sJJQtUjXiI3n7{k`Yt$6`U)!WDQ_ewX>MoFgbVmGy#WNg-g zm74B&^T}vPz}zU<85}sh#0w#`#Tj6>;QFuqqN;r7|~WJ`1X;z&UR584rj?X=^?2F`R9B*{TpGawb0!HZ|IP0V@n z!Hk8S%~#`jnQGBwuwe{%9^~s>4D&W$=Q7oP;nH<3pTMnG&OFRH4AN^{?K#2PJKnV! z7{EAXIEmj^==*v@tv8?IMUa&Z9=Yhg8V+E@joA0Adt2^c-9^RwOWq2VQ;48hyRZ8h z$RQ4v`o1lLEwcaPcKUlvoqlIOt!1Ew@)k>_{-yT$-X}Fd=bYDlxQIX=nvcDMeh`xs z0~exAcVDdGTokHWWM2}cTTEFE%7lFlcdlkqanHpaxIT&_mH+TY-DRh$8kt+Z(F_)Y zIq7gOAXT!I`RV(>ClLCj64Wqrr~i8f3aAIp@K4P*Q<88v#TOYkn2gqWum=%$?P`j? zKi3O+3r;&N@!vG$WeWa|8}JfMr*mL0^`FELtWGla)99P-YDmXC`)Tw|dqJdHUG|F| zp-uMZu1Hna42(vamT6Cm`@gKNpABX}x4y1a90XH9zva12h~2KpYO!V*^>+V#zAv+r z@8z{RYEJfL!ZPq15}h1obfJOnG;|XGaQ>p#9ZYcJySWB?B+-5=kmJ#%cjt-=4U4X?{S z3+*3u`*lyAYS~Qm;__|Lu-XJOQb{rJ_es%r`)<#3+DBh)IKYzZ;Ei;~i|o7wf}Qie z8_Rg7omUvl0|Fjlt$nN4-=Y&RW%a5Nc}Je2@jfl6XwKsIB#-?}#%`+9RZZwQjW>u% zdZ++UnSHmO4e*vUmg*qil_n+auin~x<&>w4LA}f_m-=qq@`*E@OP|qI+deP5+Mgd5;hR>VGRX8uBtG0} z?z!^j(Of46MIWW+;FVYXsQREvfWASu#5G74PkC(#YVP}FT`Yn*Lxbo=HA7IQdTal6 zRNgH0Sv>-jiBj%(GgUvzJz$roFZe;Z3`(c`V02CFN~r!8OhBV4x8``IK#k7CVC~AV zuThfL6Afmc?>_RV%!i&}-G;aZNorQr$JIeW4b1Ki@~Fy(HUAf+0FBEvuekWAKY0jd z8h)RXodx!rBG_k)R~q%}4k9gce{WNQ-!BQVAg{l79@+A6ohTOX=!h?-r8!4?@gtqF zlP?Ckd1K+XP>UAD+7lg}$u_v`GPO9iAkP|GpKNVSw877++LEcn*r`=B&w^{u>*v#R zV_VnQ_KqYlrDWoXrr5lWcx%EM+t`upYG=O>8))$UBJa5)GM!QioJ{_gvMlQY_~F@5 zdX~P4zk%rJ=c^X-<2kL8Px>Z)nK#a#9e`h+2|_^uy>Mebf{#!NthX&x^ zuCf1!0Q~Yd#ytNy0r-0~@(&BZFMo5&<>Og&(r(f>+0O!6be#Xw0r;`5sQgC+;2){s zKQaLS$r}En0`TW)`0?yTX*cPc>~}8l^ZJWwkfIp>?k7rcMd`sVy|0Np!;{x!nB7SavJYQVOmA*;-EgJcFe~{#pzKMUG zhX42g{2MgD**ou8vd~X_*ZH4p9+}FxAaZ?|Ajr_9%=)Xb3k8={KxAaZ=Z_@DR2jJhV;m7+Mq+IEns*F@4xZPZpkNo6aNt!{=xwK z^4>9S|Dpi=qc!r21MnAW_{Rs}FV*nJ0@%Nj_<8sTc>(z4IkDV+=Lg__K_mZy0Q@_NpZA|@0@$xd z!;f1sH2iokisX~NiGP!ZzdS(w-Aw$v{BTWD%9XxJ{x*&L?*`C+ zhlc;20Q_%g`0@S~skih^`pbJ?dHLZzCz4P4CVqK7IJY0(ha&l;Z{i6_%s^VYfjrUuBryvLXGKM+8E zokoAWPe$r3eUtukh@Y2VG=Tn18u@q+jg%{Wll+v1AJ-HlpY%=qOEmm=|BK|4zKLI+ zPs;6&_ryp(>6`f1YV21Lz<%pA`u{9|{0$oU-2wO?)X2v*8JTbCoATeS;m7-BB%kz6 z{M$78ZwbKvf<`{xKO^Nz-z0yRMn2wCBl)Cn;_uPO-xh%X1C4yVuSUw1zDfQ^8u^C@ z;LoP}3V8j;dv2s$>6_#qLHxY`cs>CCu^RaYYWTyj#tY3#UK;@++l?mv8RSbGlJK}= z;0g0m>On0lPo!#DC3Nor?*CW;G%`OUiT+gZQ9iwH5o%crrQsaJ4j?UeW8eYPH1VtS z>T@yh>f|pX`C*9XPU#Kw~~A*2jzbmXjS=*fa&BvLh?tsqC`lQf2)E2IpRMf4gaqU{QoBY$!YlU z&H!EhcTxV)zUVOjc+ZQP|Dk|mo)q(0rF3rnR>^>gfD4Pi?jPLKf&6OuWglhJ)VZW0 zgtXk@J`0`xqj9qnI9`6Y!Lw9H;<%=RlxqE-L-O}vBFssC3CT6lQVEb>O7eTiFlfKE z5GVPi{2G$4=708Q?1WBN(pBv|9r(5RrwcTt9F+exjr>l7{4bFF3)0A6NBpY&wi162 z#B(R}FR?oyUg$3Y@=Hm7IS)bo@g5z?FY|@p`B8*wzl}%R390R0wcn4Vd?jL64yNj@ zKX<{iD*sa8)5+i7Px&)}Usry6H1fZxk&oYbbn<)qDgXBd`8n7y!AU!#{lBe|KMM+8 zCqIWezI67#2>5mRAFYx99gY002KjmYl>d}LeyK+OJsSCcFvy=l^3MVu?rf{N$X)~g zHN-#BB^4nkE|1Fvqj^i=y#gn72E{3rHP zei8743RbC7u{LSsVC?<3;1>U@6pJA zL?eF`%+Gc5zt&IrM*_c2zC{-&^Zxfyjr@rI@W74Dv^k{5)dD{{P1i zR?GiUgZ#Hie!BMeu7Us1V{O5|=E_4@)xXD}f0Xp^CVtc(?+;V;KMnvazadJ(za#l{ zO%bJH(>f0jxRUtQ`NuoNAK}ChR>WAB0KcyMvvIRAxTyGR&%d95Fpvu;>%~_M@(Yf$ z>Bu84zx*#5lP- z8RW0k&kzlM*cGz`SVG>TCX;f{EvW#JCw!UwFdpWkGH8# z;lvQOYo!a~J%Wg-_5aVr-|CWzkgDgsz^}{yR!#Z;5>im>-x~(`b!7N-_W!*>{vM6} zu`g2PkB55#b@@+`;5*agzX14k`Oi7Rw)7g}$M*M}M*ebx{G71OIF|UOr`mt1LH;_D z&)YxVho|O$n?e5hVO!!kQZV_d{4ECgn@E0?_%Q!3LRgjG2KOB5?0pa_Y{;K(Z!61Jm$>;fh1yWJvUkU3xy8Q15+ahTi zY?S|X1ONNPf3m}A2UPu^H}D^IqD`;%|F%`#ME_>spF;fU%I`10uPeVfn)1VY3|0GG ze2CtD^GNdr$p5gP`Tw>-em4Ht2OO`zuWRK0(I9_R zu3)!l8fQPiUp4=eVSMj2UPvv zH}J0_{&fA2tt9`Azi5e*eH{gfX9ex3Xtjr@OWyxQRR0V+C;ABR>mFqUOKJApaL6ADV~9srmnnfqy6Qr|bWIWzc^S=|6|0WBbEz zg{uCSLIcB+R_70w3Y-^q0OUr+MW^&g{wUzh)E{IN7RUVriY1Xcd84f414Q~oau^1~YW_^nozeaN^|DO%=XOn#O{YTaR4+i;7 z8u_>+t;#>~|FK>+-)=BOjMURQbyc@?RtQY3C2{f~qV3cZnaGm&YM3 zcXu23L!)h~bo>{>3yx0yDB@37eo|S>N1kp=Oi97ytMWfG$X`zK=MW#}Kdh1eS%dslB>$o`@}D*EzefDD zjOnDJ>i;zG>&mZ(^xwhs$MXkN`&GgK39xVce*X-c5vB(or^^4Hfj^sGeAD$GS3m{T z$sgHI{_O_-(ZpZm(cb_5krmdyQV>R;cJ5ewHN|Ha3_@$@HUl07c{BI)p-2V9cbv6I9bM^AqlKfdx zF!`$dTHx2o@6qJHKqLPr2Kj#>`8$AzJ5~NBgZw<~Y{8WfKbAlK{#wodiLlOrBx?CT zO%tbd?f)7B|4YO_UTER|QT1O4{5tzJ;bAl2c=?Uj=>L{M{-MNJ;))g_RsI_W`D-=u zCuro)I$3YODI`DL_+-*qva+Ww{hzpng8YwSN21gZ9a%pkv#A!~far~>+=>JE9{BMx_RcYkoJYOe&Bpy}8tN|4TIbziN=*L-NzjpT>{T=YJ3J(=wcs z2UY(9;MeKjtI_{*jsD*>$UnZ&774}caadN|-D!}Yjfd@l=-;f-|8|4?<7weSm9N&Hn+@_el6+o&=4<5dHOQ|d`A6`~LRiiJhX(n( zH2H7U$p0)Th-s?rXAa3vSAXz5MQ8s#8u>|${9hU5-$?RDDEU|IkMmTW{w>-5jT#X4}j{5mxHuQbSip5&(+|3WZ8>-2wv_@{DZA*|;AKL-6vN&hJEM*pid`qvxef05+N{L5^p<+sJa|1IKASN=~L^xvc@|7$h+p9cM`&VFzA zQ~xg#e@Mw#HZ2^<_9OEz-#_H@GT_(Q-#XbYDPDh{|4|7O9yq6PCFUuA4qsm75H5cMv%PO60`(Fma-)Q&`f@rnwA;I4Ef_u<^Ml+GA()l literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/flags.make b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/flags.make new file mode 100644 index 0000000..9e70465 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile CXX with /usr/bin/c++ +CXX_FLAGS = -fPIE -Wall -Wextra -std=c++17 + +CXX_DEFINES = + +CXX_INCLUDES = -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/APIs/c_api/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/angles/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/costmap_2d/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/data_convert/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_filter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_geometry/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_cpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_time/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/voxel_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/xmlrpcpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Packages/move_base/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/include + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/link.txt b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/link.txt new file mode 100644 index 0000000..79af6bc --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -rdynamic CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o -o robot_control_example -L/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib -L/usr/local/lib -Wl,-rpath,"/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh:\$ORIGIN:/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib:/usr/local/lib" libmission_adapters.so -lrobot_cpp -lrobot_time -lrobot_xmlrpcpp -lpthread diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/progress.make b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/progress.make new file mode 100644 index 0000000..d92f75a --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/robot_control_example.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 13 +CMAKE_PROGRESS_2 = 14 + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/CXX.includecache b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/CXX.includecache new file mode 100644 index 0000000..50c0a0c --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/CXX.includecache @@ -0,0 +1,290 @@ +#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">]) + +#IncludeRegexScan: ^.*$ + +#IncludeRegexComplain: ^$ + +#IncludeRegexTransform: + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_geometry_msgs/Point.h +- +robot_geometry_msgs/Quaternion.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- +robot_std_msgs/Header.h +- +robot_geometry_msgs/Pose.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +string +- +vector +- +memory +- +robot_protocol_msgs/ActionParameter.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +string +- +vector +- +memory +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +string +- +vector +- +memory +- +robot_protocol_msgs/Trajectory.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +string +- +vector +- +memory +- +robot_protocol_msgs/NodePosition.h +- +robot_protocol_msgs/Action.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +string +- +vector +- +memory +- +boost/shared_ptr.hpp +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +string +- +vector +- +memory +- +robot_protocol_msgs/Node.h +- +robot_protocol_msgs/Edge.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +string +- +vector +- +memory +- +robot_protocol_msgs/ControlPoint.h +- + +../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +string +- +vector +- +memory +- +robot/time.h +- + +../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +yaml-cpp/yaml.h +- +robot_xmlrpcpp/XmlRpcValue.h +- +memory +- +string +- +map +- +vector +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +iostream +- +math.h +- +stdexcept +- +climits +- +stdint.h +- +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +stdexcept +- +string +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +robot/macros.h +- + +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +robot/platform.h +- +iostream +- +cmath +- +robot/exception.h +- +duration.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +robot_time_decl.h +../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +sys/timeb.h +- +sys/time.h +- + +../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +map +- +string +- +vector +- +time.h +- + +../include/mission_adapters/adapter.h +memory +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/mission_request.h +- +mission_adapters/types.h +- + +../include/mission_adapters/mission_request.h +memory +- +string +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +../include/mission_adapters/types.h +cstdint +- +limits +- +memory +- +string +- +vector +- +robot_geometry_msgs/PoseStamped.h +- +robot_protocol_msgs/Order.h +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/vda5050_order_demo.cpp +mission_adapters/mission_request.h +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/mission_adapters/mission_request.h +mission_adapters/types.h +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/mission_adapters/types.h +../plugins/vda5050_source_adapter.h +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.h +cstdio +- +string +- + +/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.h +cstddef +- +limits +- +cstdint +- +map +- +memory +- +string +- +vector +- +robot/node_handle.h +- +mission_adapters/adapter.h +- + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/DependInfo.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/DependInfo.cmake new file mode 100644 index 0000000..5d562b4 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/DependInfo.cmake @@ -0,0 +1,63 @@ +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + "CXX" + ) +# The set of files for implicit dependencies of each language: +set(CMAKE_DEPENDS_CHECK_CXX + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/vda5050_order_demo.cpp" "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o" + ) +set(CMAKE_CXX_COMPILER_ID "GNU") + +# The include file search paths: +set(CMAKE_CXX_TARGET_INCLUDE_PATH + "../../../pnkx_nav_core/src/APIs/c_api/include" + "../../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/angles/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include" + "../../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include" + "../../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include" + "../../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include" + "../../../pnkx_nav_core/src/Libraries/costmap_2d/include" + "../../../pnkx_nav_core/src/Libraries/data_convert/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include" + "../../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include" + "../../../pnkx_nav_core/src/Libraries/laser_filter/include" + "../../../pnkx_nav_core/src/Libraries/laser_geometry/include" + "../../../pnkx_nav_core/src/Libraries/robot_cpp/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include" + "../../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include" + "../../../pnkx_nav_core/src/Libraries/robot_time/include" + "../../../pnkx_nav_core/src/Libraries/voxel_grid/include" + "../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include" + "../../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include" + "../../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include" + "../../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include" + "../../../pnkx_nav_core/src/Navigations/Packages/move_base/include" + "../include" + "../plugins" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters_vda5050_source.dir/DependInfo.cmake" + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/mission_adapters.dir/DependInfo.cmake" + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/build.make b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/build.make new file mode 100644 index 0000000..23668d2 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/build.make @@ -0,0 +1,100 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh + +# Include any dependencies generated for this target. +include CMakeFiles/vda5050_order_demo.dir/depend.make + +# Include the progress variables for this target. +include CMakeFiles/vda5050_order_demo.dir/progress.make + +# Include the compile flags for this target's objects. +include CMakeFiles/vda5050_order_demo.dir/flags.make + +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: CMakeFiles/vda5050_order_demo.dir/flags.make +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../examples/vda5050_order_demo.cpp + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o -c /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/vda5050_order_demo.cpp + +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.i" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/vda5050_order_demo.cpp > CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.i + +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.s" + /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/vda5050_order_demo.cpp -o CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.s + +# Object files for target vda5050_order_demo +vda5050_order_demo_OBJECTS = \ +"CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o" + +# External object files for target vda5050_order_demo +vda5050_order_demo_EXTERNAL_OBJECTS = + +vda5050_order_demo: CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o +vda5050_order_demo: CMakeFiles/vda5050_order_demo.dir/build.make +vda5050_order_demo: libmission_adapters_vda5050_source.so +vda5050_order_demo: libmission_adapters.so +vda5050_order_demo: CMakeFiles/vda5050_order_demo.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable vda5050_order_demo" + $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/vda5050_order_demo.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +CMakeFiles/vda5050_order_demo.dir/build: vda5050_order_demo + +.PHONY : CMakeFiles/vda5050_order_demo.dir/build + +CMakeFiles/vda5050_order_demo.dir/clean: + $(CMAKE_COMMAND) -P CMakeFiles/vda5050_order_demo.dir/cmake_clean.cmake +.PHONY : CMakeFiles/vda5050_order_demo.dir/clean + +CMakeFiles/vda5050_order_demo.dir/depend: + cd /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : CMakeFiles/vda5050_order_demo.dir/depend + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/cmake_clean.cmake b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/cmake_clean.cmake new file mode 100644 index 0000000..37da6cb --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/cmake_clean.cmake @@ -0,0 +1,10 @@ +file(REMOVE_RECURSE + "CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o" + "vda5050_order_demo" + "vda5050_order_demo.pdb" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/vda5050_order_demo.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/depend.internal b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/depend.internal new file mode 100644 index 0000000..7e36d80 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/depend.internal @@ -0,0 +1,30 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h + ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h + ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h + ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h + ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h + ../include/mission_adapters/adapter.h + ../include/mission_adapters/mission_request.h + ../include/mission_adapters/types.h + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/examples/vda5050_order_demo.cpp + /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins/vda5050_source_adapter.h diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/depend.make b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/depend.make new file mode 100644 index 0000000..b8f5cd2 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/depend.make @@ -0,0 +1,30 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Point.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Pose.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/PoseStamped.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include/robot_geometry_msgs/Quaternion.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Action.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ActionParameter.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/ControlPoint.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Edge.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Node.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/NodePosition.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Order.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include/robot_protocol_msgs/Trajectory.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include/robot_std_msgs/Header.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_cpp/include/robot/node_handle.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/duration.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/exception.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/macros.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/platform.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/robot_time_decl.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/robot_time/include/robot/time.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../../../pnkx_nav_core/src/Libraries/xmlrpcpp/include/robot_xmlrpcpp/XmlRpcValue.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../include/mission_adapters/adapter.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../include/mission_adapters/mission_request.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../include/mission_adapters/types.h +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../examples/vda5050_order_demo.cpp +CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o: ../plugins/vda5050_source_adapter.h + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..be4a44ba09e23bf43a83687515e6e5d655646bde GIT binary patch literal 442600 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 HVe0=Mjz$QL literal 0 HcmV?d00001 diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/flags.make b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/flags.make new file mode 100644 index 0000000..52efd8d --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# compile CXX with /usr/bin/c++ +CXX_FLAGS = -fPIE -Wall -Wextra -std=c++17 + +CXX_DEFINES = + +CXX_INCLUDES = -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/APIs/c_api/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Cores/score_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/angles/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/kalman/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_algorithm/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Libraries/mkt_plugins/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/custom_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/dock_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/global_planners/two_points_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Algorithms/Packages/local_planners/pnkx_local_planner/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_map_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_nav_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_protocol_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_std_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/common_msgs/robot_visualization_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/costmap_2d/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/data_convert/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_geometry_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/geometry2/robot_tf3_sensor_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_filter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/laser_geometry/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_cpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_nav_2d_utils/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/robot_time/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/voxel_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Libraries/xmlrpcpp/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/move_base_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core2/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Cores/robot_nav_core_adapter/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/nav_grid/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_actionlib_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_clear_costmap_recovery/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Libraries/robot_move_base_msgs/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../pnkx_nav_core/src/Navigations/Packages/move_base/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/include -I/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/plugins + diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/link.txt b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/link.txt new file mode 100644 index 0000000..f499c2d --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/link.txt @@ -0,0 +1 @@ +/usr/bin/c++ -rdynamic CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o -o vda5050_order_demo -L/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib -L/usr/local/lib -Wl,-rpath,"/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh:\$ORIGIN:/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib:/usr/local/lib" libmission_adapters_vda5050_source.so -lrobot_cpp -lrobot_time -lrobot_xmlrpcpp libmission_adapters.so -lrobot_cpp -lrobot_time -lrobot_xmlrpcpp -lpthread diff --git a/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/progress.make b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/progress.make new file mode 100644 index 0000000..a35c33b --- /dev/null +++ b/build-standalone-codex-5j6ZZh/CMakeFiles/vda5050_order_demo.dir/progress.make @@ -0,0 +1,3 @@ +CMAKE_PROGRESS_1 = 15 +CMAKE_PROGRESS_2 = 16 + diff --git a/build-standalone-codex-5j6ZZh/Makefile b/build-standalone-codex-5j6ZZh/Makefile new file mode 100644 index 0000000..a6dbd11 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/Makefile @@ -0,0 +1,584 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.16 + +# Default target executed when no arguments are given to make. +default_target: all + +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + + +# A target that is always out of date. +cmake_force: + +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components + +.PHONY : list_install_components/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache + +.PHONY : rebuild_cache/fast + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache + +.PHONY : edit_cache/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/progress.marks + $(MAKE) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean + +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named vda5050_order_demo + +# Build rule for target. +vda5050_order_demo: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 vda5050_order_demo +.PHONY : vda5050_order_demo + +# fast build rule for target. +vda5050_order_demo/fast: + $(MAKE) -f CMakeFiles/vda5050_order_demo.dir/build.make CMakeFiles/vda5050_order_demo.dir/build +.PHONY : vda5050_order_demo/fast + +#============================================================================= +# Target rules for targets named robot_control_example + +# Build rule for target. +robot_control_example: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 robot_control_example +.PHONY : robot_control_example + +# fast build rule for target. +robot_control_example/fast: + $(MAKE) -f CMakeFiles/robot_control_example.dir/build.make CMakeFiles/robot_control_example.dir/build +.PHONY : robot_control_example/fast + +#============================================================================= +# Target rules for targets named mission_adapters_vda5050_source + +# Build rule for target. +mission_adapters_vda5050_source: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 mission_adapters_vda5050_source +.PHONY : mission_adapters_vda5050_source + +# fast build rule for target. +mission_adapters_vda5050_source/fast: + $(MAKE) -f CMakeFiles/mission_adapters_vda5050_source.dir/build.make CMakeFiles/mission_adapters_vda5050_source.dir/build +.PHONY : mission_adapters_vda5050_source/fast + +#============================================================================= +# Target rules for targets named mission_adapters_goal_source + +# Build rule for target. +mission_adapters_goal_source: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 mission_adapters_goal_source +.PHONY : mission_adapters_goal_source + +# fast build rule for target. +mission_adapters_goal_source/fast: + $(MAKE) -f CMakeFiles/mission_adapters_goal_source.dir/build.make CMakeFiles/mission_adapters_goal_source.dir/build +.PHONY : mission_adapters_goal_source/fast + +#============================================================================= +# Target rules for targets named mission_adapters + +# Build rule for target. +mission_adapters: cmake_check_build_system + $(MAKE) -f CMakeFiles/Makefile2 mission_adapters +.PHONY : mission_adapters + +# fast build rule for target. +mission_adapters/fast: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/build +.PHONY : mission_adapters/fast + +examples/robot_control_example.o: examples/robot_control_example.cpp.o + +.PHONY : examples/robot_control_example.o + +# target to build an object file +examples/robot_control_example.cpp.o: + $(MAKE) -f CMakeFiles/robot_control_example.dir/build.make CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.o +.PHONY : examples/robot_control_example.cpp.o + +examples/robot_control_example.i: examples/robot_control_example.cpp.i + +.PHONY : examples/robot_control_example.i + +# target to preprocess a source file +examples/robot_control_example.cpp.i: + $(MAKE) -f CMakeFiles/robot_control_example.dir/build.make CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.i +.PHONY : examples/robot_control_example.cpp.i + +examples/robot_control_example.s: examples/robot_control_example.cpp.s + +.PHONY : examples/robot_control_example.s + +# target to generate assembly for a file +examples/robot_control_example.cpp.s: + $(MAKE) -f CMakeFiles/robot_control_example.dir/build.make CMakeFiles/robot_control_example.dir/examples/robot_control_example.cpp.s +.PHONY : examples/robot_control_example.cpp.s + +examples/vda5050_order_demo.o: examples/vda5050_order_demo.cpp.o + +.PHONY : examples/vda5050_order_demo.o + +# target to build an object file +examples/vda5050_order_demo.cpp.o: + $(MAKE) -f CMakeFiles/vda5050_order_demo.dir/build.make CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.o +.PHONY : examples/vda5050_order_demo.cpp.o + +examples/vda5050_order_demo.i: examples/vda5050_order_demo.cpp.i + +.PHONY : examples/vda5050_order_demo.i + +# target to preprocess a source file +examples/vda5050_order_demo.cpp.i: + $(MAKE) -f CMakeFiles/vda5050_order_demo.dir/build.make CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.i +.PHONY : examples/vda5050_order_demo.cpp.i + +examples/vda5050_order_demo.s: examples/vda5050_order_demo.cpp.s + +.PHONY : examples/vda5050_order_demo.s + +# target to generate assembly for a file +examples/vda5050_order_demo.cpp.s: + $(MAKE) -f CMakeFiles/vda5050_order_demo.dir/build.make CMakeFiles/vda5050_order_demo.dir/examples/vda5050_order_demo.cpp.s +.PHONY : examples/vda5050_order_demo.cpp.s + +plugins/goal_source_adapter.o: plugins/goal_source_adapter.cpp.o + +.PHONY : plugins/goal_source_adapter.o + +# target to build an object file +plugins/goal_source_adapter.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters_goal_source.dir/build.make CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.o +.PHONY : plugins/goal_source_adapter.cpp.o + +plugins/goal_source_adapter.i: plugins/goal_source_adapter.cpp.i + +.PHONY : plugins/goal_source_adapter.i + +# target to preprocess a source file +plugins/goal_source_adapter.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters_goal_source.dir/build.make CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.i +.PHONY : plugins/goal_source_adapter.cpp.i + +plugins/goal_source_adapter.s: plugins/goal_source_adapter.cpp.s + +.PHONY : plugins/goal_source_adapter.s + +# target to generate assembly for a file +plugins/goal_source_adapter.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters_goal_source.dir/build.make CMakeFiles/mission_adapters_goal_source.dir/plugins/goal_source_adapter.cpp.s +.PHONY : plugins/goal_source_adapter.cpp.s + +plugins/vda5050_source_adapter.o: plugins/vda5050_source_adapter.cpp.o + +.PHONY : plugins/vda5050_source_adapter.o + +# target to build an object file +plugins/vda5050_source_adapter.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters_vda5050_source.dir/build.make CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.o +.PHONY : plugins/vda5050_source_adapter.cpp.o + +plugins/vda5050_source_adapter.i: plugins/vda5050_source_adapter.cpp.i + +.PHONY : plugins/vda5050_source_adapter.i + +# target to preprocess a source file +plugins/vda5050_source_adapter.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters_vda5050_source.dir/build.make CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.i +.PHONY : plugins/vda5050_source_adapter.cpp.i + +plugins/vda5050_source_adapter.s: plugins/vda5050_source_adapter.cpp.s + +.PHONY : plugins/vda5050_source_adapter.s + +# target to generate assembly for a file +plugins/vda5050_source_adapter.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters_vda5050_source.dir/build.make CMakeFiles/mission_adapters_vda5050_source.dir/plugins/vda5050_source_adapter.cpp.s +.PHONY : plugins/vda5050_source_adapter.cpp.s + +src/event.o: src/event.cpp.o + +.PHONY : src/event.o + +# target to build an object file +src/event.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/event.cpp.o +.PHONY : src/event.cpp.o + +src/event.i: src/event.cpp.i + +.PHONY : src/event.i + +# target to preprocess a source file +src/event.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/event.cpp.i +.PHONY : src/event.cpp.i + +src/event.s: src/event.cpp.s + +.PHONY : src/event.s + +# target to generate assembly for a file +src/event.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/event.cpp.s +.PHONY : src/event.cpp.s + +src/event_processor.o: src/event_processor.cpp.o + +.PHONY : src/event_processor.o + +# target to build an object file +src/event_processor.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/event_processor.cpp.o +.PHONY : src/event_processor.cpp.o + +src/event_processor.i: src/event_processor.cpp.i + +.PHONY : src/event_processor.i + +# target to preprocess a source file +src/event_processor.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/event_processor.cpp.i +.PHONY : src/event_processor.cpp.i + +src/event_processor.s: src/event_processor.cpp.s + +.PHONY : src/event_processor.s + +# target to generate assembly for a file +src/event_processor.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/event_processor.cpp.s +.PHONY : src/event_processor.cpp.s + +src/mission_config.o: src/mission_config.cpp.o + +.PHONY : src/mission_config.o + +# target to build an object file +src/mission_config.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_config.cpp.o +.PHONY : src/mission_config.cpp.o + +src/mission_config.i: src/mission_config.cpp.i + +.PHONY : src/mission_config.i + +# target to preprocess a source file +src/mission_config.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_config.cpp.i +.PHONY : src/mission_config.cpp.i + +src/mission_config.s: src/mission_config.cpp.s + +.PHONY : src/mission_config.s + +# target to generate assembly for a file +src/mission_config.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_config.cpp.s +.PHONY : src/mission_config.cpp.s + +src/mission_executor.o: src/mission_executor.cpp.o + +.PHONY : src/mission_executor.o + +# target to build an object file +src/mission_executor.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.o +.PHONY : src/mission_executor.cpp.o + +src/mission_executor.i: src/mission_executor.cpp.i + +.PHONY : src/mission_executor.i + +# target to preprocess a source file +src/mission_executor.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.i +.PHONY : src/mission_executor.cpp.i + +src/mission_executor.s: src/mission_executor.cpp.s + +.PHONY : src/mission_executor.s + +# target to generate assembly for a file +src/mission_executor.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_executor.cpp.s +.PHONY : src/mission_executor.cpp.s + +src/mission_manager.o: src/mission_manager.cpp.o + +.PHONY : src/mission_manager.o + +# target to build an object file +src/mission_manager.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.o +.PHONY : src/mission_manager.cpp.o + +src/mission_manager.i: src/mission_manager.cpp.i + +.PHONY : src/mission_manager.i + +# target to preprocess a source file +src/mission_manager.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.i +.PHONY : src/mission_manager.cpp.i + +src/mission_manager.s: src/mission_manager.cpp.s + +.PHONY : src/mission_manager.s + +# target to generate assembly for a file +src/mission_manager.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/mission_manager.cpp.s +.PHONY : src/mission_manager.cpp.s + +src/plugin_registry.o: src/plugin_registry.cpp.o + +.PHONY : src/plugin_registry.o + +# target to build an object file +src/plugin_registry.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.o +.PHONY : src/plugin_registry.cpp.o + +src/plugin_registry.i: src/plugin_registry.cpp.i + +.PHONY : src/plugin_registry.i + +# target to preprocess a source file +src/plugin_registry.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.i +.PHONY : src/plugin_registry.cpp.i + +src/plugin_registry.s: src/plugin_registry.cpp.s + +.PHONY : src/plugin_registry.s + +# target to generate assembly for a file +src/plugin_registry.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/plugin_registry.cpp.s +.PHONY : src/plugin_registry.cpp.s + +src/types.o: src/types.cpp.o + +.PHONY : src/types.o + +# target to build an object file +src/types.cpp.o: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/types.cpp.o +.PHONY : src/types.cpp.o + +src/types.i: src/types.cpp.i + +.PHONY : src/types.i + +# target to preprocess a source file +src/types.cpp.i: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/types.cpp.i +.PHONY : src/types.cpp.i + +src/types.s: src/types.cpp.s + +.PHONY : src/types.s + +# target to generate assembly for a file +src/types.cpp.s: + $(MAKE) -f CMakeFiles/mission_adapters.dir/build.make CMakeFiles/mission_adapters.dir/src/types.cpp.s +.PHONY : src/types.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... install/strip" + @echo "... install" + @echo "... list_install_components" + @echo "... rebuild_cache" + @echo "... vda5050_order_demo" + @echo "... edit_cache" + @echo "... robot_control_example" + @echo "... install/local" + @echo "... mission_adapters_vda5050_source" + @echo "... mission_adapters_goal_source" + @echo "... mission_adapters" + @echo "... examples/robot_control_example.o" + @echo "... examples/robot_control_example.i" + @echo "... examples/robot_control_example.s" + @echo "... examples/vda5050_order_demo.o" + @echo "... examples/vda5050_order_demo.i" + @echo "... examples/vda5050_order_demo.s" + @echo "... plugins/goal_source_adapter.o" + @echo "... plugins/goal_source_adapter.i" + @echo "... plugins/goal_source_adapter.s" + @echo "... plugins/vda5050_source_adapter.o" + @echo "... plugins/vda5050_source_adapter.i" + @echo "... plugins/vda5050_source_adapter.s" + @echo "... src/event.o" + @echo "... src/event.i" + @echo "... src/event.s" + @echo "... src/event_processor.o" + @echo "... src/event_processor.i" + @echo "... src/event_processor.s" + @echo "... src/mission_config.o" + @echo "... src/mission_config.i" + @echo "... src/mission_config.s" + @echo "... src/mission_executor.o" + @echo "... src/mission_executor.i" + @echo "... src/mission_executor.s" + @echo "... src/mission_manager.o" + @echo "... src/mission_manager.i" + @echo "... src/mission_manager.s" + @echo "... src/plugin_registry.o" + @echo "... src/plugin_registry.i" + @echo "... src/plugin_registry.s" + @echo "... src/types.o" + @echo "... src/types.i" + @echo "... src/types.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/build-standalone-codex-5j6ZZh/cmake_install.cmake b/build-standalone-codex-5j6ZZh/cmake_install.cmake new file mode 100644 index 0000000..63051a9 --- /dev/null +++ b/build-standalone-codex-5j6ZZh/cmake_install.cmake @@ -0,0 +1,141 @@ +# Install script for directory: /home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters.so" + RPATH "/usr/local/lib") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/libmission_adapters.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters.so" + OLD_RPATH "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh:/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib:/usr/local/lib:" + NEW_RPATH "/usr/local/lib") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_goal_source.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_goal_source.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_goal_source.so" + RPATH "/usr/local/lib") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/libmission_adapters_goal_source.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_goal_source.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_goal_source.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_goal_source.so" + OLD_RPATH "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh:\$ORIGIN:/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib:/usr/local/lib:" + NEW_RPATH "/usr/local/lib") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_goal_source.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_vda5050_source.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_vda5050_source.so") + file(RPATH_CHECK + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_vda5050_source.so" + RPATH "/usr/local/lib") + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE SHARED_LIBRARY FILES "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/libmission_adapters_vda5050_source.so") + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_vda5050_source.so" AND + NOT IS_SYMLINK "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_vda5050_source.so") + file(RPATH_CHANGE + FILE "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_vda5050_source.so" + OLD_RPATH "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh:\$ORIGIN:/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/../../../../devel/lib:/usr/local/lib:" + NEW_RPATH "/usr/local/lib") + if(CMAKE_INSTALL_DO_STRIP) + execute_process(COMMAND "/usr/bin/strip" "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/libmission_adapters_vda5050_source.so") + endif() + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/mission_adapters/mission_adapters-targets.cmake") + file(DIFFERENT EXPORT_FILE_CHANGED FILES + "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/mission_adapters/mission_adapters-targets.cmake" + "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets.cmake") + if(EXPORT_FILE_CHANGED) + file(GLOB OLD_CONFIG_FILES "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/mission_adapters/mission_adapters-targets-*.cmake") + if(OLD_CONFIG_FILES) + message(STATUS "Old export file \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/mission_adapters/mission_adapters-targets.cmake\" will be replaced. Removing files [${OLD_CONFIG_FILES}].") + file(REMOVE ${OLD_CONFIG_FILES}) + endif() + endif() + endif() + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/mission_adapters" TYPE FILE FILES "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets.cmake") + if("${CMAKE_INSTALL_CONFIG_NAME}" MATCHES "^()$") + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/mission_adapters" TYPE FILE FILES "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/CMakeFiles/Export/lib/cmake/mission_adapters/mission_adapters-targets-noconfig.cmake") + endif() +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include" TYPE DIRECTORY FILES "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/include/mission_adapters/" FILES_MATCHING REGEX "/[^/]*\\.h$") +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/home/duongtd/T800_ws/src/AMR_T800/Test/mission_adapters/build-standalone-codex-5j6ZZh/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/build-standalone-codex-5j6ZZh/libmission_adapters.so b/build-standalone-codex-5j6ZZh/libmission_adapters.so new file mode 100755 index 0000000000000000000000000000000000000000..c93849344b46a1c7126107172d36281e86092520 GIT binary patch literal 979992 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�YRBbQ9ee-Oplh<9=7 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%0A3VKU(g?g7gbyKbNF;%X*ik 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