24
24
#include " behaviortree_cpp/behavior_tree.h"
25
25
#include " geometry_msgs/msg/point.hpp"
26
26
#include " geometry_msgs/msg/quaternion.hpp"
27
- #include " geometry_msgs/msg/pose_stamped .hpp"
27
+ #include " geometry_msgs/msg/pose_stamped_array .hpp"
28
28
#include " nav_msgs/msg/path.hpp"
29
29
30
30
namespace BT
@@ -105,19 +105,19 @@ inline geometry_msgs::msg::PoseStamped convertFromString(const StringView key)
105
105
}
106
106
107
107
/* *
108
- * @brief Parse XML string to std::vector< geometry_msgs::msg::PoseStamped>
108
+ * @brief Parse XML string to geometry_msgs::msg::PoseStampedArray
109
109
* @param key XML string
110
- * @return std::vector< geometry_msgs::msg::PoseStamped>
110
+ * @return geometry_msgs::msg::PoseStampedArray
111
111
*/
112
112
template <>
113
- inline std::vector< geometry_msgs::msg::PoseStamped> convertFromString (const StringView key)
113
+ inline geometry_msgs::msg::PoseStampedArray convertFromString (const StringView key)
114
114
{
115
115
// 9 real numbers separated by semicolons
116
116
auto parts = BT::splitString (key, ' ;' );
117
117
if (parts.size () % 9 != 0 ) {
118
- throw std::runtime_error (" invalid number of fields for std::vector<PoseStamped> attribute)" );
118
+ throw std::runtime_error (" invalid number of fields for PoseStampedArray attribute)" );
119
119
} else {
120
- std::vector< geometry_msgs::msg::PoseStamped> poses ;
120
+ geometry_msgs::msg::PoseStampedArray pose_stamped_array ;
121
121
for (size_t i = 0 ; i < parts.size (); i += 9 ) {
122
122
geometry_msgs::msg::PoseStamped pose_stamped;
123
123
pose_stamped.header .stamp = rclcpp::Time (BT::convertFromString<int64_t >(parts[i]));
@@ -129,9 +129,9 @@ inline std::vector<geometry_msgs::msg::PoseStamped> convertFromString(const Stri
129
129
pose_stamped.pose .orientation .y = BT::convertFromString<double >(parts[i + 6 ]);
130
130
pose_stamped.pose .orientation .z = BT::convertFromString<double >(parts[i + 7 ]);
131
131
pose_stamped.pose .orientation .w = BT::convertFromString<double >(parts[i + 8 ]);
132
- poses.push_back (pose_stamped);
132
+ pose_stamped_array. poses .push_back (pose_stamped);
133
133
}
134
- return poses ;
134
+ return pose_stamped_array ;
135
135
}
136
136
}
137
137
0 commit comments