<commit_before><?xml version="1.0"?>

<launch>
  <arg name="fuse_rgbd" default="$(optenv HECTOR_ELEVATION_MAPPING_FUSE_RGBD false)"/>
  <arg name="filter_limit_max" default="1.0"/>
  
  <!-- Throttle RGBD for elevation mapping (lazy) -->
  <node pkg="nodelet" type="nodelet" name="front_rgbd_cam_depth_throttle" output="screen" respawn="false" args="load hector_nodelet_topic_tools/NodeletThrottlePointcloud /front_rgbd_cam/front_rgbd_cam_nodelet_manager">
    <param name="update_rate" value="2"/>
    <remap from="/front_rgbd_cam/topic_in" to="/front_rgbd_cam/depth/color/points"/>
    <remap from="/front_rgbd_cam/topic_out" to="/front_rgbd_cam/depth/color/points_throttle"/>
  </node>
  
  <node pkg="nodelet" type="nodelet" name="back_rgbd_cam_depth_throttle" output="screen" respawn="false" args="load hector_nodelet_topic_tools/NodeletThrottlePointcloud /back_rgbd_cam/back_rgbd_cam_nodelet_manager">
    <param name="update_rate" value="2"/>
    <remap from="/back_rgbd_cam/topic_in" to="/back_rgbd_cam/depth/color/points"/>
    <remap from="/back_rgbd_cam/topic_out" to="/back_rgbd_cam/depth/color/points_throttle"/>
  </node>

  <!-- Crop points by height -->
  <node pkg="nodelet" type="nodelet" name="scan_z_filter" output="screen" respawn="false" args="standalone pcl/PassThrough" >
        <param name="filter_field_name" value="z"/>
        <param name="filter_limit_min" value="-1"/>
        <param name="filter_limit_max" value="$(arg filter_limit_max)"/>
        <param name="input_frame" value="base_stabilized"/>
        <remap from="~input" to="/scan_matched_points2"/>
        <remap from="~output" to="/scan_matched_points2_cropped"/>
  </node>
  <node pkg="nodelet" type="nodelet" name="scan_z_filter_front" output="screen" respawn="false" args="standalone pcl/PassThrough" if="$(arg fuse_rgbd)">
    <param name="filter_field_name" value="z"/>
    <param name="filter_limit_min" value="-1"/>
    <param name="filter_limit_max" value="$(arg filter_limit_max)"/>
    <param name="input_frame" value="base_stabilized"/>
    <remap from="~input" to="/front_rgbd_cam/depth/color/points_throttle"/>
    <remap from="~output" to="/front_rgbd_cam/depth/color/points_throttle_cropped"/>
  </node>
  <node pkg="nodelet" type="nodelet" name="scan_z_filter_back" output="screen" respawn="false" args="standalone pcl/PassThrough" if ="$(arg fuse_rgbd)">
    <param name="filter_field_name" value="z"/>
    <param name="filter_limit_min" value="-1"/>
    <param name="filter_limit_max" value="$(arg filter_limit_max)"/>
    <param name="input_frame" value="base_stabilized"/>
    <remap from="~input" to="/back_rgbd_cam/depth/color/points_throttle"/>
    <remap from="~output" to="/back_rgbd_cam/depth/color/points_throttle_cropped"/>
  </node>

  <!-- Relay pose -->
  <node pkg="pose_to_pose_with_covariance" type="pose_to_pose_with_covariance" name="pose_to_pose_with_covariance" output="screen" respawn="false"/>
  
  <!-- Elevation mapping -->
  <node pkg="elevation_mapping" type="elevation_mapping" name="elevation_mapping" output="screen" respawn="false" clear_params="true">
    <rosparam command="load" file="$(find hector_tracked_vehicles_launch)/config/elevation_mapping/jasmine_robot.yaml" />
    <rosparam command="load" file="$(find hector_tracked_vehicles_launch)/config/elevation_mapping/map_range_global.yaml" />
    <rosparam command="load" file="$(find elevation_mapping)/config/sensor_processors/velodyne_HDL-32E.yaml" ns="input_sources/lidar"/>
    
    <rosparam if="$(arg fuse_rgbd)" command="load" file="$(find hector_tracked_vehicles_launch)/config/elevation_mapping/jasmine_robot_rgbd.yaml" />
    <rosparam if="$(arg fuse_rgbd)" command="load" file="$(find hector_tracked_vehicles_launch)/config/sensor_processors/realsense_d435.yaml" ns="input_sources/front_rgbd"/>
    <rosparam if="$(arg fuse_rgbd)" command="load" file="$(find hector_tracked_vehicles_launch)/config/sensor_processors/realsense_d435.yaml" ns="input_sources/back_rgbd"/>
  </node>
    




    
<!--    <node pkg="vigir_laserscan_to_pointcloud" type="laserscan_to_pointcloud_node" name="front_repub" respawn="true" output="screen">
      <param name="min_range" value="0" />
      <param name="use_high_fidelity_projection" value="true" />
      <param name="target_frame" value="base_link" />
      <remap from="scan" to="/move_group/scan_self_filtered" />
      <remap from="scan_cloud" to="/move_group_scan_cloud" />
      <rosparam command="load" file="$(find vigir_laserscan_to_pointcloud)/config/argo_scan_filter.yaml" />
    </node>-->
    
    <!--Fused map visualization-->
<!--    <node pkg="grid_map_visualization" type="grid_map_visualization" name="elevation_map_fused_visualization" output="screen" respawn="true">
      <param name="grid_map_topic" value="/elevation_mapping/elevation_map_global" />
      <rosparam command="load" file="$(find elevation_mapping)/config/visualization/fused_global.yaml" />
    </node>--><commit_msg>Setting elevation mapping to respawn<commit_after><?xml version="1.0"?>

<launch>
  <arg name="fuse_rgbd" default="$(optenv HECTOR_ELEVATION_MAPPING_FUSE_RGBD false)"/>
  <arg name="filter_limit_max" default="1.0"/>
  
  <!-- Throttle RGBD for elevation mapping (lazy) -->
  <node pkg="nodelet" type="nodelet" name="front_rgbd_cam_depth_throttle" output="screen" respawn="true" args="load hector_nodelet_topic_tools/NodeletThrottlePointcloud /front_rgbd_cam/front_rgbd_cam_nodelet_manager">
    <param name="update_rate" value="2"/>
    <remap from="/front_rgbd_cam/topic_in" to="/front_rgbd_cam/depth/color/points"/>
    <remap from="/front_rgbd_cam/topic_out" to="/front_rgbd_cam/depth/color/points_throttle"/>
  </node>
  
  <node pkg="nodelet" type="nodelet" name="back_rgbd_cam_depth_throttle" output="screen" respawn="true" args="load hector_nodelet_topic_tools/NodeletThrottlePointcloud /back_rgbd_cam/back_rgbd_cam_nodelet_manager">
    <param name="update_rate" value="2"/>
    <remap from="/back_rgbd_cam/topic_in" to="/back_rgbd_cam/depth/color/points"/>
    <remap from="/back_rgbd_cam/topic_out" to="/back_rgbd_cam/depth/color/points_throttle"/>
  </node>

  <!-- Crop points by height -->
  <node pkg="nodelet" type="nodelet" name="scan_z_filter" output="screen" respawn="true" args="standalone pcl/PassThrough" >
        <param name="filter_field_name" value="z"/>
        <param name="filter_limit_min" value="-1"/>
        <param name="filter_limit_max" value="$(arg filter_limit_max)"/>
        <param name="input_frame" value="base_stabilized"/>
        <remap from="~input" to="/scan_matched_points2"/>
        <remap from="~output" to="/scan_matched_points2_cropped"/>
  </node>
  <node pkg="nodelet" type="nodelet" name="scan_z_filter_front" output="screen" respawn="true" args="standalone pcl/PassThrough" if="$(arg fuse_rgbd)">
    <param name="filter_field_name" value="z"/>
    <param name="filter_limit_min" value="-1"/>
    <param name="filter_limit_max" value="$(arg filter_limit_max)"/>
    <param name="input_frame" value="base_stabilized"/>
    <remap from="~input" to="/front_rgbd_cam/depth/color/points_throttle"/>
    <remap from="~output" to="/front_rgbd_cam/depth/color/points_throttle_cropped"/>
  </node>
  <node pkg="nodelet" type="nodelet" name="scan_z_filter_back" output="screen" respawn="true" args="standalone pcl/PassThrough" if ="$(arg fuse_rgbd)">
    <param name="filter_field_name" value="z"/>
    <param name="filter_limit_min" value="-1"/>
    <param name="filter_limit_max" value="$(arg filter_limit_max)"/>
    <param name="input_frame" value="base_stabilized"/>
    <remap from="~input" to="/back_rgbd_cam/depth/color/points_throttle"/>
    <remap from="~output" to="/back_rgbd_cam/depth/color/points_throttle_cropped"/>
  </node>

  <!-- Relay pose -->
  <node pkg="pose_to_pose_with_covariance" type="pose_to_pose_with_covariance" name="pose_to_pose_with_covariance" output="screen" respawn="true"/>
  
  <!-- Elevation mapping -->
  <node pkg="elevation_mapping" type="elevation_mapping" name="elevation_mapping" output="screen" respawn="true" clear_params="true">
    <rosparam command="load" file="$(find hector_tracked_vehicles_launch)/config/elevation_mapping/jasmine_robot.yaml" />
    <rosparam command="load" file="$(find hector_tracked_vehicles_launch)/config/elevation_mapping/map_range_global.yaml" />
    <rosparam command="load" file="$(find elevation_mapping)/config/sensor_processors/velodyne_HDL-32E.yaml" ns="input_sources/lidar"/>
    
    <rosparam if="$(arg fuse_rgbd)" command="load" file="$(find hector_tracked_vehicles_launch)/config/elevation_mapping/jasmine_robot_rgbd.yaml" />
    <rosparam if="$(arg fuse_rgbd)" command="load" file="$(find hector_tracked_vehicles_launch)/config/sensor_processors/realsense_d435.yaml" ns="input_sources/front_rgbd"/>
    <rosparam if="$(arg fuse_rgbd)" command="load" file="$(find hector_tracked_vehicles_launch)/config/sensor_processors/realsense_d435.yaml" ns="input_sources/back_rgbd"/>
  </node>
    




    
<!--    <node pkg="vigir_laserscan_to_pointcloud" type="laserscan_to_pointcloud_node" name="front_repub" respawn="true" output="screen">
      <param name="min_range" value="0" />
      <param name="use_high_fidelity_projection" value="true" />
      <param name="target_frame" value="base_link" />
      <remap from="scan" to="/move_group/scan_self_filtered" />
      <remap from="scan_cloud" to="/move_group_scan_cloud" />
      <rosparam command="load" file="$(find vigir_laserscan_to_pointcloud)/config/argo_scan_filter.yaml" />
    </node>-->
    
    <!--Fused map visualization-->
<!--    <node pkg="grid_map_visualization" type="grid_map_visualization" name="elevation_map_fused_visualization" output="screen" respawn="true">
      <param name="grid_map_topic" value="/elevation_mapping/elevation_map_global" />
      <rosparam command="load" file="$(find elevation_mapping)/config/visualization/fused_global.yaml" />
    </node>-->
{'fraction_non_alphanumeric': 0.1603868627846061, 'fraction_numerical': 0.004029820672980053, 'mean_word_length': 5.869896193771626, 'pattern_counts': {'":': 0, '<': 135, '<?xml version=': 2, '>': 135, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5529891', 'n_tokens_mistral': 3563, 'n_tokens_neox': 3405, 'n_words': 487}