20 Commits

Author SHA1 Message Date
zhangyi1357
2e670a6858
refactor: update visibility settings in CMakeLists.txt (#154)
- Removed redundant visibility settings and consolidated them for both C and C++.
- Ensured consistent application of visibility presets to enhance code encapsulation and maintainability.
2025-01-08 20:43:42 +08:00
zhangyi1357
33a84d58f3
Fix: typos in doc and cmake (#145)
* docs: improve clarity and consistency in AimRT documentation

- Updated terminology in the concepts documentation to correct "拓补" to "拓扑" for accuracy.
- Enhanced the README for the ROS2 plugin by adding process type clarifications (e.g., specifying "cli" and "srv" for client and server processes).
- Ensured consistent formatting and terminology throughout the documentation to improve readability and understanding for users.

* fix: correct typo in CMakeLists.txt visibility setting

- Fixed a typo in the CMakeLists.txt file where "CMAKE_CXX_VISIBLITY_INLINES_HIDDEN" was corrected to "CMAKE_CXX_VISIBILITY_INLINES_HIDDEN". This change ensures proper visibility settings for inline functions in the project.
2025-01-06 13:49:54 +08:00
wtudio
b4cdb6527e
fix: cmake & noexcept (#126) 2024-12-13 16:15:37 +08:00
wtudio
37066a126e
fix (#120) 2024-12-06 09:42:07 +08:00
ATT_POWER
18d45dbb0f
feat: add proxy plugin to transfer messages from one backend to multiple backends (#108)
* feat(plugins): add proxy plugin

* feat: add proxy action

* feat: del the state in proxy action

* feat: format

* fix : add check not to pub same topic and msg_type

* fix: remove TimerSchedule  executor check

* docs: add docs

* doc: change docs

* fix: remove some unnessary code

* refactor(proxy_plugin): migrate TopicMetaKey to core/util directory

* fix: simplify the code

* format

* fix: struct bind

* perf(proxy): use action_raw_ptr capture rather than reference capture local variable

* docs: update proxy_plugin documentation and add example configuration

* fix: remove necessary check in echo plugin

* doc: add proxy plugin example docs

* fix: migrate recordplayback plugin and echo plugin's topic_meta_key into util

* fix: format

* fix: remove necessary code

* perf: remove unnecessary code
2024-11-23 10:25:48 +08:00
zhangyi1357
bb68f77f67
build: enhance build options for modular components (#97)
* build: enhance build options for modular components

Add dependent options for building various plugins and components, allowing finer control over runtime and external library usage. This change improves flexibility and ensures that components are only built when their dependencies are active, optimizing the build process.

* build: update grpc plugin dependency condition

Remove protobuf dependency requirement for the grpc plugin, simplifying its build configuration. This improves flexibility by allowing the grpc plugin to be built independently of the protobuf option.

---------

Co-authored-by: zhangyi <zhangyi@agibot.com>
2024-11-13 13:48:28 +08:00
wtudio
dac046b3fe
fix: runtime/core/util (#91) 2024-11-08 17:01:04 +08:00
zhangyi1357
29eb541fd6
fix: add error handling for local protoc compiler detection (#89)
* build: add error handling for local protoc compiler detection

Ensure that the local `protoc` compiler is found when `AIMRT_USE_LOCAL_PROTOC_COMPILER` is enabled. This improves setup reliability by providing clear feedback if `protoc` is missing, helping users avoid runtime issues.

* build: include YamlCpp for enhanced configuration support

Add support for YamlCpp to improve configuration handling alongside ROS2 dependencies.

* chore: remove redundant gflag setting

Clean up the CMake configuration by removing the unnecessary gflag setting for testing, streamlining the build process.
2024-11-08 09:46:05 +08:00
zhangyi1357
0a63cb9fe1
build: refactor CMake scripts to use functions for variable scope (#87)
* build: refactor CMake scripts to use functions for variable scope

Wrap multiple CMake scripts in functions to restrict variable scope and prevent unintended resets. This ensures better modularity and maintainability in the build process while adhering to modern CMake best practices.

* refactor: simplify opentelemetry fetch logic

Streamline the handling of OpenTelemetry dependencies by removing unnecessary function wrappers and directly implementing the fetching logic. This improves readability and maintainability while ensuring that relevant variables are correctly set within the proper scope.

* refactor: encapsulate OpenTelemetry configuration in a function

Wrap the OpenTelemetry setup in a function to limit variable scope, improving code organization and maintainability.
2024-11-07 21:17:34 +08:00
ATT_POWER
b2fd9cb78b
refactor(tools): Restructure bagtrans tool and integrate into aimrt_cli (#68)
* CI: change build worlflow image tag from v20240927 to latest

* refactor(tools): Restructure bagtrans tool and integrate into aimrt_cli

- Integrate bagtrans functionality into aimrt_cli
- Update CMakeLists.txt and documentation to reflect these changes

* choro: format the code

* choro: change the document

* choro: remove the bagtrans options

---------

Co-authored-by: yuguanlin <yuguanlin@agibot.com>
2024-10-31 21:46:25 +08:00
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
wtudio
a1fda52c37
fix: misc adjustments (#66)
* fix: misc

* doc: update misc
2024-10-31 17:57:47 +08:00
ATT_POWER
42ba5be784
fix: bagtrans options bugs (#49)
* CI: change build worlflow image tag from v20240927 to latest

* fix:  fix bagtrans tool support

- Add AIMRT_BUILD_BAGTRANS option in CMakeLists.txt
- Update build.bat, build.sh, test.bat and test.sh scripts to include bagtrans build option
- Modify CMakeLists.txt in bagtrans directory to simplify build logic
- Remove autopep8 dependency from bagtrans/requirements.txt

* format : format the code

* fix: Turn off the bagtrans compilation option on Windows

* feat(tools): Update bagtrans tool build method

- Change the build method of bagtrans tool from PyInstaller to using the build module to generate wheel files
- Update CMakeLists.txt and setup.py files to adapt to the new build method
- Update release notes, adding new information about the bagtrans tool

* fix: format

---------

Co-authored-by: yuguanlin <yuguanlin@agibot.com>
2024-10-24 21:14:13 +08:00
zhangyi1357
7811ecc7cc
build: enable position-independent code (#43)
Set CMAKE_POSITION_INDEPENDENT_CODE to ON to ensure compatibility with shared libraries and enhance portability across different architectures. Removed explicit compiler flags for PIC that were previously set.
2024-10-21 21:58:36 +08:00
ATT_POWER
9d148527a4
feat: add 'trans' command to aimrt_cli for converting aimrtbag to rosbag (#39)
* feat: support translate aimrtbag to rosbag

* feat: 添加数据包转换工具

* CI: change build worlflow image tag from v20240927 to latest

* feat: now support transfer aimrtbag to rosbag

* feat: Adjust the build and installation process of aimrt_cli , copy ROS2 plugin proto files when building aimrt_cli

* chore: format the code style

* chore: format code

* feat: Differentiate between aimrt-cli and transbag, make transbag an independent tool; add documentation for transbag

* chore: Update CI trigger from label "ci ready" to "ci"

* chore: format code

* choro: feat:  compile bagtrans module only when bagrecord and ros2 plugin are enabled; improve documentation

* choro: Modify activation method for bagtrans

---------

Co-authored-by: yuguanlin <yuguanlin@agibot.com>
2024-10-18 20:19:00 +08:00
han J
5b85a23678
Zenoh update to 1.0.0.11 (#31)
* Upgrade zenoh to version 1.0.0.11

* Update the download link for the zenoh-c library to version 1.0.0.11 and adjust some related URL configurations.

---------

Co-authored-by: hanjun <hanjun@agibot.com>
2024-10-16 19:39:38 +08:00
zhangyi1357
e83c3ce8fe
build: reorganize CMake settings for better clarity (#23)
Streamline CMake configuration by consolidating compiler options and ensuring consistent export of compile commands, enhancing the build process especially for MSVC and Windows environments.
2024-10-14 17:49:01 +08:00
zhangyi1357
793418f0a2 update 2024-10-14 09:45:07 +08:00
zhangyi1357
7d5fe68319 update 2024-09-30 17:22:32 +08:00
wtudio
d2d7b0495d update v0.8.0 2024-09-23 16:01:31 +08:00