diff --git a/include/gnss_utils/gnss_utils.h b/include/gnss_utils/gnss_utils.h index f2be565b6b02918ad3fc577d6f4375b3bd20422b..66228d6b3bd1f4a07ad27de52d41f93939fa6744 100644 --- a/include/gnss_utils/gnss_utils.h +++ b/include/gnss_utils/gnss_utils.h @@ -42,7 +42,8 @@ struct ComputePosOutput double age; // age of differential (s) double ratio; // AR ratio factor for valiation - int pos_stat; // return from pntpos 1:ok,0:error + bool success; // return from pntpos true/false + std::string msg; // message returned (in case of error) Eigen::Vector3d lat_lon; // latitude_longitude_altitude std::map<int,Eigen::Vector2d> sat_azel; // azimuth and elevation of each satellite provided diff --git a/src/utils/rcv_position.cpp b/src/utils/rcv_position.cpp index 73c42e77d4108b99c5e34bc5cfabebd96b128e44..cfa392ac4d0085b61006af7ea74723ad617d1603 100644 --- a/src/utils/rcv_position.cpp +++ b/src/utils/rcv_position.cpp @@ -36,19 +36,17 @@ ComputePosOutput computePos(const GnssUtils::Observations& _observations, std::vector<double> sat_elevations(2 * _observations.size()); // compute pose - output.pos_stat = pntpos(_observations.data(), - _observations.size(), - &(_navigation.getNavigation()), - &_prcopt, - &sol, - sat_elevations.data(), - sats_status, - msg); + output.success = pntpos(_observations.data(), + _observations.size(), + &(_navigation.getNavigation()), + &_prcopt, + &sol, + sat_elevations.data(), + sats_status, + msg); // Fill output struct - if (output.pos_stat == 0) - std::cout << "computePos: error in computing positioning, message: " << msg << "\n"; - + output.msg = std::string(msg); output.time = sol.time.time; output.sec = sol.time.sec; output.pos = Eigen::Vector3d(sol.rr);