Browse Source

Merge pull request #2569 from tinito/master

Model name from ROS parameter server instead of hardcoded string
sbg
Lorenz Meier 10 years ago
parent
commit
9bfa214f63
  1. 3
      src/platforms/ros/nodes/position_estimator/position_estimator.cpp
  2. 2
      src/platforms/ros/nodes/position_estimator/position_estimator.h

3
src/platforms/ros/nodes/position_estimator/position_estimator.cpp

@ -54,6 +54,7 @@ PositionEstimator::PositionEstimator() : @@ -54,6 +54,7 @@ PositionEstimator::PositionEstimator() :
_vehicle_position_pub(_n.advertise<px4::vehicle_local_position>("vehicle_local_position", 1)),
_startup_time(1)
{
_n.getParam("vehicle_model", _model_name);
}
void PositionEstimator::ModelStatesCallback(const gazebo_msgs::ModelStatesConstPtr &msg)
@ -68,7 +69,7 @@ void PositionEstimator::ModelStatesCallback(const gazebo_msgs::ModelStatesConstP @@ -68,7 +69,7 @@ void PositionEstimator::ModelStatesCallback(const gazebo_msgs::ModelStatesConstP
//XXX: maybe a more clever approach would be to do this not on every loop, need to check if and when
//gazebo rearranges indexes.
for (std::vector<std::string>::const_iterator it = msg->name.begin(); it != msg->name.end(); ++it) {
if (*it == "iris" || *it == "ardrone") {
if (*it == _model_name) {
index = it - msg->name.begin();
break;
}

2
src/platforms/ros/nodes/position_estimator/position_estimator.h

@ -57,6 +57,6 @@ protected: @@ -57,6 +57,6 @@ protected:
ros::Publisher _vehicle_position_pub;
uint64_t _startup_time;
std::string _model_name;
};

Loading…
Cancel
Save