ATT_POWER 7e4b5460c2
feat: add a new plugin: echo (#51)
* CI: change build worlflow image tag from v20240927 to latest

* feat/plugins: Add echo plugin

- Add echo plugin for message pass-through and logging
- Implement loading and management of different types of support packages
- Add support for multi-threaded executors
- Optimize log initialization and management logic
- Add support for YAML configuration files

* build: Update build scripts and enable Echo plugin

- Add build options for Echo plugin in build.bat, build.sh, test.bat, and test.sh scripts
- Optimize JSON serialization error handling and log output in echo_plugin.cc

* chore: Add Echo plugin related documentation

- Update release notes with Echo plugin feature description
- Add Echo plugin usage documentation
- Add Echo plugin example configuration and running instructions

* chore: format the code
- Add thread safety checks for Echo executor
- Optimize code structure to improve readability and maintainability

* choro: restructure JSON parsing logic

- Replace json-c with jsoncpp library
- Rewrite json_to_yaml function to improve code readability and robustness

* choro: adapt CMakeLists for Windows compatibility

* choro : turn off the echo plugin in windows

* feat(echo_plugin): Support YAML format message echo

- Modify GetYamlCpp.cmake to enable yaml-cpp installation
- Add yaml_convert.h and yaml_convert_test.cc in ros2_util
- Update echo_plugin to support YAML format message serialization and deserialization
- Add YAML serialization type support in aimrt_module_ros2_interface

* choro: Fix documentation

* choro : fix format and delete the extra support for echo about pb message type

* choro : format

* choro: add ros2 example for echo plugin and delete useless code

* choro: rename the echo example shell

* choro: fix some mistake

* chore: refactor type support package loader and migrate to core module

- Migrate TypeSupportPkgLoader from echo_plugin and record_playback_plugin to core/util directory
- Optimize log output, replace printf with AIMRT_INFO

* choro: replace the aimrt::common::util::AimRTException() to AIMRT_ASSERT

---------

Co-authored-by: yuguanlin <yuguanlin@agibot.com>
2024-10-31 20:03:42 +08:00

2.6 KiB
Raw Blame History

Tutorials

快速开始

通过此部分文档,您可以了解到如何引用、安装 AimRT并通过创建一个Hello World程序来快速体验 AimRT。

:maxdepth: 1

quick_start/installation_cpp.md
quick_start/installation_py.md
quick_start/helloworld_cpp.md
quick_start/helloworld_py.md

概念

通过此部分文档,您可以了解到 AimRT 中的一些核心概念和设计思想。

:maxdepth: 1

concepts/cmake.md
concepts/concepts.md
concepts/core_design.md
concepts/interface.md

CPP接口文档

您可以通过以下文档了解 C++ 接口的用法。

:maxdepth: 1

interface_cpp/common.md
interface_cpp/runtime.md
interface_cpp/core_ref.md
interface_cpp/module_base.md
interface_cpp/configurator.md
interface_cpp/executor.md
interface_cpp/logger.md
interface_cpp/parameter.md
interface_cpp/channel.md
interface_cpp/rpc.md

Python接口文档

您可以通过以下文档了解 Python 接口的用法。

:maxdepth: 1

interface_py/common.md
interface_py/runtime.md
interface_py/core_ref.md
interface_py/module_base.md
interface_py/configurator.md
interface_py/executor.md
interface_py/logger.md
interface_py/channel.md
interface_py/rpc.md

配置文档

您可以通过以下文档了解各个组件详细的配置方法。

:maxdepth: 1

cfg/common.md
cfg/module.md
cfg/configurator.md
cfg/plugin.md
cfg/main_thread.md
cfg/guard_thread.md
cfg/executor.md
cfg/log.md
cfg/channel.md
cfg/rpc.md

插件

AimRT 提供了大量官方插件,您可以通过以下文档了解各个插件的功能和配置方法。

:maxdepth: 1

plugins/net_plugin.md
plugins/mqtt_plugin.md
plugins/ros2_plugin.md
plugins/parameter_plugin.md
plugins/time_manipulator_plugin.md
plugins/log_control_plugin.md
plugins/opentelemetry_plugin.md
plugins/record_playback_plugin.md
plugins/zenoh_plugin.md
plugins/iceoryx_plugin.md
plugins/grpc_plugin.md
plugins/echo_plugin.md

如果开发者想定制开发自己的插件,可以参考以下文档。

:maxdepth: 1

plugins/how_to_dev_plugin.md

CLI工具

AimRT 提供了一个命令行工具,可以帮助开发者快速完成一些操作。

:maxdepth: 1

cli_tool/cli_tool.md
cli_tool/gen_prj.md
cli_tool/bagtrans_tool.md

示例

AimRT 提供了详细且全面的示例,开发者可以基于示例进行深入学习。

:maxdepth: 1

examples/examples_cpp.md
examples/examples_py.md
examples/examples_plugins.md

其他

:maxdepth: 1

misc/perfomance.md
misc/questions.md