diff --git a/include/navigation.h b/include/navigation.h
index 1a528af072bd6f6086f87d6627188717a8e914f1..a627ff80478c37b4bf8a6eab755906bef2ce961d 100644
--- a/include/navigation.h
+++ b/include/navigation.h
@@ -28,7 +28,8 @@ namespace GNSSUtils
 
       void setNavigation(nav_t nav);
 
-      nav_t getNavigation();
+      const nav_t & getNavigation() const;
+      nav_t & getNavigation();
 
 
       /****************** Array memory management ******************/
diff --git a/src/gnss_utils.cpp b/src/gnss_utils.cpp
index dfc94b688b77d2bb42ca0e6b9b0ebca4f0b9be7e..ba54dbfbd519e69a33625d5b744dce072b49c20c 100644
--- a/src/gnss_utils.cpp
+++ b/src/gnss_utils.cpp
@@ -17,12 +17,12 @@ Receiver::~Receiver()
 
 const std::shared_ptr<GNSSUtils::Observations> Receiver::getObs()
 {
-    return obs_ptr_;
+    // return obs_ptr_;
 }
 
 const std::shared_ptr<GNSSUtils::Navigation> Receiver::getNav()
 {
-    return nav_ptr_;
+    // return nav_ptr_;
 }
 
 /* - Processing options - */
diff --git a/src/navigation.cpp b/src/navigation.cpp
index 65cc8f1fdeaab96f49bc174046fb9bf1d8bc2f0a..e2a64f4a4cb2dae5b579465fd445d0157c55987a 100644
--- a/src/navigation.cpp
+++ b/src/navigation.cpp
@@ -87,10 +87,15 @@ void Navigation::setNavigation(nav_t nav)
   */
 
 
-  _nav = nav;
+  // _nav = nav;
 }
 
-nav_t Navigation::getNavigation()
+const nav_t & Navigation::getNavigation() const
+{
+  return _nav;
+}
+
+nav_t & Navigation::getNavigation()
 {
   return _nav;
 }