@@ -118,6 +118,13 @@ ObjectAssociationMergerNode::ObjectAssociationMergerNode(const rclcpp::NodeOptio
118
118
119
119
merged_object_pub_ = create_publisher<autoware_auto_perception_msgs::msg::DetectedObjects>(
120
120
" output/object" , rclcpp::QoS{1 });
121
+
122
+ // Debug publisher
123
+ processing_time_publisher_ =
124
+ std::make_unique<tier4_autoware_utils::DebugPublisher>(this , " object_association_merger" );
125
+ stop_watch_ptr_ = std::make_unique<tier4_autoware_utils::StopWatch<std::chrono::milliseconds>>();
126
+ stop_watch_ptr_->tic (" cyclic_time" );
127
+ stop_watch_ptr_->tic (" processing_time" );
121
128
}
122
129
123
130
void ObjectAssociationMergerNode::objectsCallback (
@@ -128,6 +135,7 @@ void ObjectAssociationMergerNode::objectsCallback(
128
135
if (merged_object_pub_->get_subscription_count () < 1 ) {
129
136
return ;
130
137
}
138
+ stop_watch_ptr_->toc (" processing_time" , true );
131
139
132
140
/* transform to base_link coordinate */
133
141
autoware_auto_perception_msgs::msg::DetectedObjects transformed_objects0, transformed_objects1;
@@ -215,6 +223,11 @@ void ObjectAssociationMergerNode::objectsCallback(
215
223
216
224
// publish output msg
217
225
merged_object_pub_->publish (output_msg);
226
+ // publish processing time
227
+ processing_time_publisher_->publish <tier4_debug_msgs::msg::Float64Stamped>(
228
+ " debug/cyclic_time_ms" , stop_watch_ptr_->toc (" cyclic_time" , true ));
229
+ processing_time_publisher_->publish <tier4_debug_msgs::msg::Float64Stamped>(
230
+ " debug/processing_time_ms" , stop_watch_ptr_->toc (" processing_time" , true ));
218
231
}
219
232
} // namespace object_association
220
233
0 commit comments