Skip to content

Commit 7251d5f

Browse files
committed
Correctly report errors for other stages too
1 parent d1cead7 commit 7251d5f

File tree

3 files changed

+19
-3
lines changed

3 files changed

+19
-3
lines changed

core/src/stages/current_state.cpp

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,13 @@ void CurrentState::compute() {
9696
return;
9797
}
9898
}
99-
ROS_WARN("failed to acquire current PlanningScene");
99+
if (storeFailures()) {
100+
SubTrajectory solution;
101+
solution.markAsFailure(
102+
fmt::format("Failed to acquire current PlanningScene within timeout of {}s", timeout.toSec()));
103+
spawn(InterfaceState(scene_), std::move(solution));
104+
} else
105+
ROS_WARN_STREAM_NAMED("CurrentState", "Failed to acquire current PlanningScene");
100106
}
101107
} // namespace stages
102108
} // namespace task_constructor

core/src/stages/fixed_cartesian_poses.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,12 @@ void FixedCartesianPoses::compute() {
8686
if (pose.header.frame_id.empty())
8787
pose.header.frame_id = scene->getPlanningFrame();
8888
else if (!scene->knowsFrameTransform(pose.header.frame_id)) {
89-
ROS_WARN_NAMED("FixedCartesianPoses", "Unknown frame: '%s'", pose.header.frame_id.c_str());
89+
if (storeFailures()) {
90+
SubTrajectory trajectory;
91+
trajectory.markAsFailure(fmt::format("Unknown frame: '{}'", pose.header.frame_id));
92+
spawn(InterfaceState(scene), std::move(trajectory));
93+
} else
94+
ROS_WARN_NAMED("FixedCartesianPoses", "Unknown frame: '%s'", pose.header.frame_id.c_str());
9095
continue;
9196
}
9297

core/src/stages/generate_random_pose.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,12 @@ void GenerateRandomPose::compute() {
9494
if (seed_pose.header.frame_id.empty())
9595
seed_pose.header.frame_id = scene->getPlanningFrame();
9696
else if (!scene->knowsFrameTransform(seed_pose.header.frame_id)) {
97-
ROS_WARN_NAMED("GenerateRandomPose", "Unknown frame: '%s'", seed_pose.header.frame_id.c_str());
97+
if (storeFailures()) {
98+
SubTrajectory trajectory;
99+
trajectory.markAsFailure(fmt::format("Unknown frame: '{}'", seed_pose.header.frame_id));
100+
spawn(InterfaceState(scene), std::move(trajectory));
101+
} else
102+
ROS_WARN_NAMED("GenerateRandomPose", "Unknown frame: '%s'", seed_pose.header.frame_id.c_str());
98103
return;
99104
}
100105

0 commit comments

Comments
 (0)