From da19bb06334adf90b8592a16a42be6f7ecbc965d Mon Sep 17 00:00:00 2001 From: PepMS <jmarti@iri.upc.edu> Date: Fri, 4 Oct 2019 12:50:19 +0200 Subject: [PATCH] Changed from smart pointers to references --- include/gnss_utils/gnss_utils.h | 6 +++--- include/gnss_utils/observations.h | 2 +- src/gnss_utils.cpp | 18 +++++++++--------- src/observations.cpp | 2 +- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/include/gnss_utils/gnss_utils.h b/include/gnss_utils/gnss_utils.h index 0169d3e..716a8fb 100644 --- a/include/gnss_utils/gnss_utils.h +++ b/include/gnss_utils/gnss_utils.h @@ -37,9 +37,9 @@ namespace GNSSUtils Eigen::Vector3d lat_lon; // latitude_longitude_altitude }; - GNSSUtils::ComputePosOutput computePos(const std::shared_ptr<Observations> & _observations, - const std::shared_ptr<Navigation> & _navigation, - const std::shared_ptr<prcopt_t> & _prcopt); + GNSSUtils::ComputePosOutput computePos(const Observations & _observations, + const Navigation & _navigation, + const prcopt_t & _prcopt); Eigen::Vector3d ecefToLatLon(const Eigen::Vector3d & _ecef); } diff --git a/include/gnss_utils/observations.h b/include/gnss_utils/observations.h index 336a408..44a8672 100644 --- a/include/gnss_utils/observations.h +++ b/include/gnss_utils/observations.h @@ -32,7 +32,7 @@ namespace GNSSUtils void pushObservation(obsd_t obs); - std::vector<obsd_t> getObservations(); + const std::vector<obsd_t> & getObservations() const; diff --git a/src/gnss_utils.cpp b/src/gnss_utils.cpp index f75f69a..f8e9b42 100644 --- a/src/gnss_utils.cpp +++ b/src/gnss_utils.cpp @@ -2,12 +2,12 @@ namespace GNSSUtils { - GNSSUtils::ComputePosOutput computePos(const std::shared_ptr<GNSSUtils::Observations> & _observations, - const std::shared_ptr<GNSSUtils::Navigation> & _navigation, - const std::shared_ptr<prcopt_t> & _prcopt) + GNSSUtils::ComputePosOutput computePos(const GNSSUtils::Observations & _observations, + const GNSSUtils::Navigation & _navigation, + const prcopt_t & _prcopt) { // Remove duplicated satellites - uniqnav(&(_navigation->getNavigation())); + uniqnav(&(_navigation.getNavigation())); // Define processing options // prcopt_t prcopt = prcopt_default; @@ -30,14 +30,14 @@ namespace GNSSUtils sol_t sol; sol = {{0}}; - output.pos_stat = pntpos(&(_observations->getObservations()[0]), _observations->getObservations().size(), - &(_navigation->getNavigation()), - _prcopt.get(), &sol, NULL, NULL, msg); + output.pos_stat = pntpos(_observations.getObservations().data(), _observations.getObservations().size(), + &(_navigation.getNavigation()), + &_prcopt, &sol, NULL, NULL, msg); output.time = sol.time.time; output.time = sol.time.sec; - output.pos = Eigen::Map<Eigen::Vector3d>(sol.rr); - output.vel = Eigen::Map<Eigen::Vector3d>(&sol.rr[3]); + output.pos = Eigen::Vector3d(sol.rr); + output.vel = Eigen::Vector3d(&sol.rr[3]); output.pos_covar << sol.qr[0], sol.qr[3], sol.qr[5], sol.qr[3], sol.qr[1], sol.qr[4], sol.qr[5], sol.qr[3], sol.qr[2]; diff --git a/src/observations.cpp b/src/observations.cpp index db7529d..120ba7c 100644 --- a/src/observations.cpp +++ b/src/observations.cpp @@ -23,7 +23,7 @@ void Observations::pushObservation(obsd_t obs) this->obs_vector_.push_back(obs); } -std::vector<obsd_t> Observations::getObservations() +const std::vector<obsd_t> & Observations::getObservations() const { return this->obs_vector_; } -- GitLab