dora-rs / dora

DORA (Dataflow-Oriented Robotic Application) is middleware designed to streamline and simplify the creation of AI-based robotic applications. It offers low latency, composable, and distributed dataflow capabilities. Applications are modeled as directed graphs, also referred to as pipelines.
https://dora-rs.ai
Apache License 2.0
1.35k stars 67 forks source link

ros2-bridge action implementation #536

Open starlitxiling opened 3 weeks ago

starlitxiling commented 3 weeks ago

I have some questions about the implementation of service in ros2-bridge. What is the stuff in dora//libraries/extensions/ros2-bridge/msg-gen/test_msgs used for? In msg-gen/src, what are parser and type used for? I see the macros and structures used to generate Rust FFI code in types/message.rs, which are used in lib.rs, so is lib.rs the core implementation? If I want to implement action in dora through ros2-client, which parts should I pay attention to? Of course, I want to know where and what the service implementation in ros2-bridge is specifically done.

starlitxiling commented 3 weeks ago

I read some source code of ros2-bridge and ros2-client libraries and checked the implementation of service. So in order to implement action, I just need to encapsulate some action-related APIs in type/action.rs and add rust->c code in ros2-bridge/msg-gen/src/lib.rs. Is this correct?