Ros2NitrosBridgeImageMessageImpl#
Fully qualified name: isaacsim::ros2::bridge::Ros2NitrosBridgeImageMessageImpl
-
class Ros2NitrosBridgeImageMessageImpl : public isaacsim::ros2::bridge::Ros2NitrosBridgeImageMessage, private isaacsim::ros2::bridge::Ros2MessageInterfaceImpl#
Implementation of NITROS Bridge Image message.
Handles the creation and manipulation of isaac_ros_nitros_bridge_interfaces/msg/NitrosBridgeImage messages, which are used for efficient image data transfer in the NVIDIA Isaac ROS pipeline.
Public Functions
-
Ros2NitrosBridgeImageMessageImpl()#
-
virtual ~Ros2NitrosBridgeImageMessageImpl()#
-
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 writeHeader(
- const double timeStamp,
- const std::string &frameId,
Writes the message header.
- Parameters:
timeStamp – [in] Time in seconds
frameId – [in] Frame ID for the image
- virtual void generateBuffer(
- const uint32_t height,
- const uint32_t width,
- const std::string &encoding,
Initializes the image metadata.
- Parameters:
height – [in] Image height in pixels
width – [in] Image width in pixels
encoding – [in] Image encoding format
-
virtual void writeData(const std::vector<int32_t> &imageData)#
Sets the CUDA memory block data.
- Parameters:
imageData – [in] Vector containing process ID and CUDA memory block file descriptor
-
inline void *getBufferPtr()#
Get the pointer to the buffer.
This method is named the same as Ros2ImageMessage::getBufferPtr for compatibility. Since the NitrosBridgeImage message does not define a buffer, it always return
nullptr.- Returns:
nullptr.
-
inline size_t getTotalBytes()#
Get the total size (
step * height) of the buffer, in bytes.Returns the total size of the image data in bytes.
- Returns:
Buffer size.
-
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.
-
Ros2NitrosBridgeImageMessageImpl()#