chrono::ros::ChROSIPCInterface Class Reference
Description
IPC-based interface that runs ROS in a separate process to avoid symbol conflicts.
#include <ChROSIPCInterface.h>
Inheritance diagram for chrono::ros::ChROSIPCInterface:

Collaboration diagram for chrono::ros::ChROSIPCInterface:

Public Member Functions | |
| ChROSIPCInterface (const std::string &node_name) | |
| Constructor. More... | |
| ~ChROSIPCInterface () | |
| Destructor - ensures subprocess cleanup. | |
| void | Initialize (rclcpp::NodeOptions options=rclcpp::NodeOptions()) override |
| Initialize the subprocess-based ROS interface. | |
| void | SpinSome (std::chrono::nanoseconds max_duration=std::chrono::nanoseconds(0)) override |
| Process IPC messages (replaces SpinSome functionality) | |
| rclcpp::Node::SharedPtr | GetNode () override |
| Override GetNode to return nullptr (no node in main process) | |
| bool | SendHandlerData (ipc::MessageType message_type, const void *data, size_t size) |
| Send handler data to the subprocess for publishing. More... | |
| bool | ReceiveMessage (ipc::Message &message) |
| Receive message from subprocess (bidirectional communication) More... | |
Public Member Functions inherited from chrono::ros::ChROSInterface | |
| ChROSInterface (const std::string node_name) | |
| Constructor for the ChROSInterface class. More... | |
| virtual | ~ChROSInterface ()=default |
| Virtual destructor for polymorphism. | |
| const std::string & | GetNodeName () const |
| Get the node name (for IPC interface access) | |
Constructor & Destructor Documentation
◆ ChROSIPCInterface()
| chrono::ros::ChROSIPCInterface::ChROSIPCInterface | ( | const std::string & | node_name | ) |
Constructor.
- Parameters
-
node_name Name for the ROS node in the subprocess
Member Function Documentation
◆ ReceiveMessage()
| bool chrono::ros::ChROSIPCInterface::ReceiveMessage | ( | ipc::Message & | message | ) |
Receive message from subprocess (bidirectional communication)
- Parameters
-
message Message buffer to fill
- Returns
- true if message was received, false if no messages available
◆ SendHandlerData()
| bool chrono::ros::ChROSIPCInterface::SendHandlerData | ( | ipc::MessageType | message_type, |
| const void * | data, | ||
| size_t | size | ||
| ) |
Send handler data to the subprocess for publishing.
- Parameters
-
message_type Type of handler data data Serialized data to send size Size of data in bytes
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_ros/ChROSIPCInterface.h
- /builds/uwsbel/chrono/src/chrono_ros/ChROSIPCInterface.cpp
Public Member Functions inherited from