mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-06-08 18:52:46 +08:00
Model name from ROS parameter server instead of hardcoded string
This commit is contained in:
@@ -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
|
||||
//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;
|
||||
}
|
||||
|
||||
@@ -57,6 +57,6 @@ protected:
|
||||
ros::Publisher _vehicle_position_pub;
|
||||
|
||||
uint64_t _startup_time;
|
||||
|
||||
std::string _model_name;
|
||||
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user