Ros2AckermannDriveStampedMessageImpl#

Fully qualified name: isaacsim::ros2::bridge::Ros2AckermannDriveStampedMessageImpl

class Ros2AckermannDriveStampedMessageImpl : public isaacsim::ros2::bridge::Ros2AckermannDriveStampedMessage, private isaacsim::ros2::bridge::Ros2MessageInterfaceImpl#

Implementation of ROS 2 Ackermann Drive Stamped message.

Handles the creation and manipulation of ackermann_msgs/msg/AckermannDriveStamped messages, which contain Ackermann steering control commands.

Public Functions

Ros2AckermannDriveStampedMessageImpl()#
virtual ~Ros2AckermannDriveStampedMessageImpl()#
virtual const void *getTypeSupportHandle()#

Gets the type support handle for the message.

Returns a pointer to the ROS IDL message type support data structure. The actual type depends on the message category:

  • Topic: rosidl_message_type_support_t

  • Service: rosidl_service_type_support_t

  • Action: rosidl_action_type_support_t

Returns:

Pointer to the type support structure or nullptr.

virtual void readData(
double &timeStamp,
std::string &frameId,
double &steeringAngle,
double &steeringAngleVelocity,
double &speed,
double &acceleration,
double &jerk,
)#

Read the message field values.

Extracts timestamp, frame ID, and Ackermann drive parameters from a ROS 2 AckermannDriveStamped message.

Parameters:
  • timeStamp[out] Time (seconds).

  • frameId[out] Transform frame with which this data is associated.

  • steeringAngle[out] Virtual angle.

  • steeringAngleVelocity[out] Rate of change.

  • speed[out] Forward speed.

  • acceleration[out] Acceleration.

  • jerk[out] Jerk.

virtual void writeHeader(
const double timeStamp,
const std::string &frameId,
)#

Writes the message header.

Parameters:
  • timeStamp[in] Time in seconds

  • frameId[in] Frame ID for the command

virtual void writeData(
const double &steeringAngle,
const double &steeringAngleVelocity,
const double &speed,
const double &acceleration,
const double &jerk,
)#

Sets the Ackermann drive data.

Parameters:
  • steeringAngle[in] Steering angle in radians

  • steeringAngleVelocity[in] Rate of change of steering angle

  • speed[in] Forward speed

  • acceleration[in] Forward acceleration

  • jerk[in] Rate of change of acceleration

inline void *getPtr()#

Retrieves the message pointer.

Returns the pointer to the underlying ROS 2 message if it has been properly created and initialized.

Note

This method does not perform type checking - the caller is responsible for proper casting to the appropriate message type.

Returns:

Pointer to the message or nullptr if not initialized.

Protected Attributes

void *m_msg = nullptr#

Message pointer.