Skip to content

Commit 719616a

Browse files
author
tsl
committed
catch each exception an handle them according to criticality
1 parent d148311 commit 719616a

File tree

1 file changed

+22
-2
lines changed

1 file changed

+22
-2
lines changed

src/frame_publisher.cpp

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,29 @@ void FramePublisher::frameBroadcastCallback(const ros::TimerEvent& event)
8181
transform_msg = tf_buffer_.lookupTransform(from_frame_, to_frame_, ros::Time(0), ros::Duration(0.1));
8282
ROS_DEBUG_STREAM("FramePublisher::frameBroadcastCallback: transform_msg:\n" << transform_msg);
8383
}
84-
catch (tf2::TransformException& ex)
84+
catch (tf2::ConnectivityException& ex)
8585
{
86-
ROS_DEBUG_THROTTLE(1.0, "FramePublisher::frameBroadcastCallback: \n%s", ex.what());
86+
ROS_ERROR_THROTTLE(5.0, "FramePublisher::frameBroadcastCallback ConnectivityException: \n%s", ex.what());
87+
return;
88+
}
89+
catch (tf2::ExtrapolationException& ex)
90+
{
91+
ROS_WARN_THROTTLE(5.0, "FramePublisher::frameBroadcastCallback ExtrapolationException: \n%s", ex.what());
92+
return;
93+
}
94+
catch (tf2::InvalidArgumentException& ex)
95+
{
96+
ROS_ERROR("FramePublisher::frameBroadcastCallback InvalidArgumentException: \n%s", ex.what());
97+
return;
98+
}
99+
catch (tf2::LookupException& ex)
100+
{
101+
ROS_WARN_THROTTLE(5.0, "FramePublisher::frameBroadcastCallback LookupException: \n%s", ex.what());
102+
return;
103+
}
104+
catch (tf2::TimeoutException& ex)
105+
{
106+
ROS_WARN_THROTTLE(1.0, "FramePublisher::frameBroadcastCallback TimeoutException: \n%s", ex.what());
87107
return;
88108
}
89109

0 commit comments

Comments
 (0)