Skip to content

Conversation

@MartinaAnn
Copy link

In many applications it may be needed to have subscribers using sensor data QoS.
In image_rotate some publisher already expose the qos parameter to be overridden.

It may be useful having a parameter which allows users to set the sensor data QoS for the subscriber, leaving the SystemDefault one as default value.

Example of output:

ros2 run image_rotate image_rotate --ros-args -p custom_qos_type:=sensor_data
[INFO] [1764844207.285357103] [ImageRotateNode]: Reset target_x as '0.000000'
[INFO] [1764844207.285397973] [ImageRotateNode]: Reset target_y as '0.000000'
[INFO] [1764844207.285408258] [ImageRotateNode]: Reset target_z as '1.000000'
[INFO] [1764844207.285424141] [ImageRotateNode]: Reset source_x as '0.000000'
[INFO] [1764844207.285432671] [ImageRotateNode]: Reset source_y as '-1.000000'
[INFO] [1764844207.285442329] [ImageRotateNode]: Reset source_z as '0.000000'
ros2 param dump /ImageRotateNode 
/ImageRotateNode:
  ros__parameters:
    custom_qos_type: sensor_data
    image_transport: raw
    input_frame_id: ''
    max_angular_rate: 10.0
    output_frame_id: ''
    output_image_size: 2.0
    qos_overrides:
      /parameter_events:
        publisher:
          depth: 1000
          durability: volatile
          history: keep_last
          reliability: reliable
      /rotated/image:
        publisher:
          depth: 0
          history: keep_last
          reliability: system_default
      /tf:
        publisher:
          depth: 100
          durability: volatile
          history: keep_last
          reliability: reliable
    rotated:
      image:
        enable_pub_plugins:
        - image_transport/raw
    source_frame_id: ''
    source_x: 0.0
    source_y: -1.0
    source_z: 0.0
    start_type_description_service: true
    target_frame_id: ''
    target_x: 0.0
    target_y: 0.0
    target_z: 1.0
    use_camera_info: true
    use_sim_time: false

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant