From 03b96575315f92673e57c85336f3e35e095e34cb Mon Sep 17 00:00:00 2001
From: jcasals <jcasals@iri.upc.edu>
Date: Mon, 20 Apr 2020 14:16:30 +0200
Subject: [PATCH] Rearrange print function arguments

---
 include/core/capture/capture_base.h        |  4 ++--
 include/core/capture/capture_motion.h      |  2 +-
 include/core/factor/factor_base.h          |  4 ++--
 include/core/feature/feature_base.h        |  4 ++--
 include/core/frame/frame_base.h            |  4 ++--
 include/core/hardware/hardware_base.h      |  4 ++--
 include/core/landmark/landmark_base.h      |  4 ++--
 include/core/map/map_base.h                |  4 ++--
 include/core/problem/problem.h             |  8 ++------
 include/core/processor/processor_base.h    |  4 ++--
 include/core/processor/processor_motion.h  |  2 +-
 include/core/processor/processor_tracker.h |  2 +-
 include/core/sensor/sensor_base.h          |  4 ++--
 include/core/trajectory/trajectory_base.h  |  4 ++--
 src/capture/capture_base.cpp               |  8 ++++----
 src/capture/capture_motion.cpp             |  2 +-
 src/factor/factor_base.cpp                 |  6 +++---
 src/feature/feature_base.cpp               |  8 ++++----
 src/frame/frame_base.cpp                   |  8 ++++----
 src/hardware/hardware_base.cpp             |  8 ++++----
 src/landmark/landmark_base.cpp             |  6 +++---
 src/map/map_base.cpp                       |  8 ++++----
 src/problem/problem.cpp                    | 12 ++++--------
 src/processor/processor_base.cpp           |  6 +++---
 src/processor/processor_motion.cpp         |  2 +-
 src/processor/processor_tracker.cpp        |  2 +-
 src/sensor/sensor_base.cpp                 |  8 ++++----
 src/trajectory/trajectory_base.cpp         |  8 ++++----
 test/gtest_capture_base.cpp                |  2 +-
 29 files changed, 70 insertions(+), 78 deletions(-)

diff --git a/include/core/capture/capture_base.h b/include/core/capture/capture_base.h
index f8de56fd5..7eb1a10b1 100644
--- a/include/core/capture/capture_base.h
+++ b/include/core/capture/capture_base.h
@@ -103,17 +103,17 @@ class CaptureBase : public NodeBase, public HasStateBlocks, public std::enable_s
         static std::shared_ptr<classType> emplace(FrameBasePtr _frm_ptr, T&&... all);
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
 
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
 
     protected:
diff --git a/include/core/capture/capture_motion.h b/include/core/capture/capture_motion.h
index 868ebb037..8621a0eac 100644
--- a/include/core/capture/capture_motion.h
+++ b/include/core/capture/capture_motion.h
@@ -102,10 +102,10 @@ class CaptureMotion : public CaptureBase
         void setOriginCapture(CaptureBasePtr _capture_origin_ptr);
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const override;
 
         // member data:
diff --git a/include/core/factor/factor_base.h b/include/core/factor/factor_base.h
index ddfb449dc..aa0164605 100644
--- a/include/core/factor/factor_base.h
+++ b/include/core/factor/factor_base.h
@@ -207,17 +207,17 @@ class FactorBase : public NodeBase, public std::enable_shared_from_this<FactorBa
         static std::shared_ptr<classType> emplace(FeatureBasePtr _oth_ptr, T&&... all);
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
 
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
 
     private:
diff --git a/include/core/feature/feature_base.h b/include/core/feature/feature_base.h
index f009a577e..83e343c0c 100644
--- a/include/core/feature/feature_base.h
+++ b/include/core/feature/feature_base.h
@@ -107,16 +107,16 @@ class FeatureBase : public NodeBase, public std::enable_shared_from_this<Feature
         static std::shared_ptr<classType> emplace(CaptureBasePtr _cpt_ptr, T&&... all);
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
 
     private:
diff --git a/include/core/frame/frame_base.h b/include/core/frame/frame_base.h
index 21fef45a1..32b582b04 100644
--- a/include/core/frame/frame_base.h
+++ b/include/core/frame/frame_base.h
@@ -132,17 +132,17 @@ class FrameBase : public NodeBase, public HasStateBlocks, public std::enable_sha
         static std::shared_ptr<classType> emplace(TrajectoryBasePtr _ptr, T&&... all);
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
 
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
     private:
 
diff --git a/include/core/hardware/hardware_base.h b/include/core/hardware/hardware_base.h
index b9123d334..3c29221ac 100644
--- a/include/core/hardware/hardware_base.h
+++ b/include/core/hardware/hardware_base.h
@@ -28,16 +28,16 @@ class HardwareBase : public NodeBase, public std::enable_shared_from_this<Hardwa
         const SensorBasePtrList& getSensorList() const;
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
 
     private:
diff --git a/include/core/landmark/landmark_base.h b/include/core/landmark/landmark_base.h
index 49027c2a0..15b423c3b 100644
--- a/include/core/landmark/landmark_base.h
+++ b/include/core/landmark/landmark_base.h
@@ -86,17 +86,17 @@ class LandmarkBase : public NodeBase, public HasStateBlocks, public std::enable_
         static LandmarkBasePtr create(const YAML::Node& _node);
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
 
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
 
     private:
diff --git a/include/core/map/map_base.h b/include/core/map/map_base.h
index 81113892f..75a00a97c 100644
--- a/include/core/map/map_base.h
+++ b/include/core/map/map_base.h
@@ -39,16 +39,16 @@ class MapBase : public NodeBase, public std::enable_shared_from_this<MapBase>
         void save(const std::string& _map_file_yaml, const std::string& _map_name = "Map automatically saved by Wolf");
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
     private:
         std::string dateTimeNow();
diff --git a/include/core/problem/problem.h b/include/core/problem/problem.h
index edda0b3b5..3d53d831f 100644
--- a/include/core/problem/problem.h
+++ b/include/core/problem/problem.h
@@ -334,11 +334,6 @@ class Problem : public std::enable_shared_from_this<Problem>
 
     public:
         // Print and check ---------------------------------------
-        void print(int depth, //
-                   std::ostream& stream ,
-                   bool constr_by, //
-                   bool metric, //
-                   bool state_blocks) const;
         /**
          * \brief print wolf tree
          * \param depth :        levels to show ( 0: H, T, M : 1: H:S:p, T:F, M:L ; 2: T:F:C ; 3: T:F:C:f ; 4: T:F:C:f:c )
@@ -349,7 +344,8 @@ class Problem : public std::enable_shared_from_this<Problem>
         void print(int depth = 4, //
                    bool constr_by = false, //
                    bool metric = true, //
-                   bool state_blocks = false) const;
+                   bool state_blocks = false,
+                   std::ostream& stream = std::cout) const;
         void print(const std::string& depth, //
                    bool constr_by = false, //
                    bool metric = true, //
diff --git a/include/core/processor/processor_base.h b/include/core/processor/processor_base.h
index 2edffe893..0c6dff6cb 100644
--- a/include/core/processor/processor_base.h
+++ b/include/core/processor/processor_base.h
@@ -363,17 +363,17 @@ class ProcessorBase : public NodeBase, public std::enable_shared_from_this<Proce
         void setVotingAuxActive(bool _voting_active = true);
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
 
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
 };
 
diff --git a/include/core/processor/processor_motion.h b/include/core/processor/processor_motion.h
index 03c810e6d..baee3d0d1 100644
--- a/include/core/processor/processor_motion.h
+++ b/include/core/processor/processor_motion.h
@@ -458,10 +458,10 @@ class ProcessorMotion : public ProcessorBase, public IsMotion
         void setAngleTurned(const double& _angle_turned);
 
         void printHeader(int depth, //
-                         std::ostream& stream ,
                          bool constr_by, //
                          bool metric, //
                          bool state_blocks,
+                         std::ostream& stream ,
                          std::string _tabs = "") const override;
 
     protected:
diff --git a/include/core/processor/processor_tracker.h b/include/core/processor/processor_tracker.h
index 116dbec0f..b8de415cc 100644
--- a/include/core/processor/processor_tracker.h
+++ b/include/core/processor/processor_tracker.h
@@ -247,10 +247,10 @@ class ProcessorTracker : public ProcessorBase
         }
 
         void printHeader(int depth, //
-                         std::ostream& stream ,
                          bool constr_by, //
                          bool metric, //
                          bool state_blocks,
+                         std::ostream& stream ,
                          std::string _tabs = "") const override;
 
     protected:
diff --git a/include/core/sensor/sensor_base.h b/include/core/sensor/sensor_base.h
index 78dea5133..2bf9d2bbc 100644
--- a/include/core/sensor/sensor_base.h
+++ b/include/core/sensor/sensor_base.h
@@ -243,16 +243,16 @@ class SensorBase : public NodeBase, public HasStateBlocks, public std::enable_sh
         Eigen::MatrixXd getNoiseCov() const;
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
 
 
diff --git a/include/core/trajectory/trajectory_base.h b/include/core/trajectory/trajectory_base.h
index a19748203..8d6e69e41 100644
--- a/include/core/trajectory/trajectory_base.h
+++ b/include/core/trajectory/trajectory_base.h
@@ -48,16 +48,16 @@ class TrajectoryBase : public NodeBase, public std::enable_shared_from_this<Traj
         void updateLastFrames();
 
         virtual void printHeader(int depth, //
-                                 std::ostream& stream ,
                                  bool constr_by, //
                                  bool metric, //
                                  bool state_blocks,
+                                 std::ostream& stream ,
                                  std::string _tabs = "") const;
         void print(int depth, //
-                   std::ostream& stream,
                    bool constr_by, //
                    bool metric, //
                    bool state_blocks,
+                   std::ostream& stream = std::cout,
                    std::string _tabs = "") const;
     private:
         FrameBasePtr addFrame(FrameBasePtr _frame_ptr);
diff --git a/src/capture/capture_base.cpp b/src/capture/capture_base.cpp
index 7a5b64616..9d4b96c3b 100644
--- a/src/capture/capture_base.cpp
+++ b/src/capture/capture_base.cpp
@@ -277,7 +277,7 @@ void CaptureBase::setProblem(ProblemPtr _problem)
         ft->setProblem(_problem);
 }
 
-void CaptureBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void CaptureBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Cap" << id() << " " << getType();
 
@@ -340,11 +340,11 @@ void CaptureBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by
 //            }
 //        }
 }
-void CaptureBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void CaptureBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
     if (_depth >= 3)
         for (auto f : getFeatureList())
-            f->print(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs + "  ");
+            f->print(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs + "  ");
 }
 } // namespace wolf
diff --git a/src/capture/capture_motion.cpp b/src/capture/capture_motion.cpp
index 2952a97a8..f9cda1f9a 100644
--- a/src/capture/capture_motion.cpp
+++ b/src/capture/capture_motion.cpp
@@ -71,7 +71,7 @@ Eigen::VectorXd CaptureMotion::getDeltaCorrected(const VectorXd& _calib_current,
     return   delta_corrected;
 }
 
-void CaptureMotion::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void CaptureMotion::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "CapM" << id() << " " << getType();
 
diff --git a/src/factor/factor_base.cpp b/src/factor/factor_base.cpp
index 03a2898fb..c3d5f043f 100644
--- a/src/factor/factor_base.cpp
+++ b/src/factor/factor_base.cpp
@@ -299,7 +299,7 @@ void FactorBase::setProblem(ProblemPtr _problem)
         this->getProblem()->notifyFactor(shared_from_this(),ADD);
 }
 
-void FactorBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void FactorBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Fac" << id() << " " << getType() << " -->";
     if (       getFrameOtherList()   .empty()
@@ -323,8 +323,8 @@ void FactorBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by,
     _stream << std::endl;
 }
 
-void FactorBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void FactorBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
 }
 } // namespace wolf
diff --git a/src/feature/feature_base.cpp b/src/feature/feature_base.cpp
index bde4b4944..d3aa372b7 100644
--- a/src/feature/feature_base.cpp
+++ b/src/feature/feature_base.cpp
@@ -165,7 +165,7 @@ void FeatureBase::link(CaptureBasePtr _cpt_ptr)
         WOLF_WARN("Linking with nullptr");
     }
 }
-void FeatureBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void FeatureBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Ftr" << id() << " trk" << trackId() << " " << getType() << ((_depth < 4) ? " -- " + std::to_string(getFactorList().size()) + "c  " : "");
     if (_constr_by)
@@ -181,11 +181,11 @@ void FeatureBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by
 
 }
 
-void FeatureBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void FeatureBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
     if (_depth >= 4)
         for (auto c : getFactorList())
-            c->print(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs + "  ");
+            c->print(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs + "  ");
 }
 } // namespace wolf
diff --git a/src/frame/frame_base.cpp b/src/frame/frame_base.cpp
index f093b55ba..d21141d80 100644
--- a/src/frame/frame_base.cpp
+++ b/src/frame/frame_base.cpp
@@ -359,7 +359,7 @@ void FrameBase::setProblem(ProblemPtr _problem)
         cap->setProblem(_problem);
 }
 
-void FrameBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void FrameBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << (isKeyOrAux() ? (isKey() ? "KFrm" : "AFrm") : "Frm") << id() << ((_depth < 2) ? " -- " + std::to_string(getCaptureList().size()) + "C  " : "");
     if (_constr_by)
@@ -396,11 +396,11 @@ void FrameBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by,
     }
 }
 
-void FrameBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void FrameBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
     if (_depth >= 2)
         for (auto C : getCaptureList())
-            C->print(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs + "  ");
+            C->print(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs + "  ");
 }
 } // namespace wolf
diff --git a/src/hardware/hardware_base.cpp b/src/hardware/hardware_base.cpp
index 7d3e3c2a4..7456b1745 100644
--- a/src/hardware/hardware_base.cpp
+++ b/src/hardware/hardware_base.cpp
@@ -20,16 +20,16 @@ SensorBasePtr HardwareBase::addSensor(SensorBasePtr _sensor_ptr)
     return _sensor_ptr;
 }
 
-void HardwareBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void HardwareBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Hardware" << ((_depth < 1) ? ("   -- " + std::to_string(getSensorList().size()) + "S") : "")  << std::endl;
 
 }
-void HardwareBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void HardwareBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
     if (_depth >= 1)
         for (auto S : getSensorList())
-            S->print(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs + "  ");
+            S->print(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs + "  ");
 }
 } // namespace wolf
diff --git a/src/landmark/landmark_base.cpp b/src/landmark/landmark_base.cpp
index 9c93ba591..7280d7813 100644
--- a/src/landmark/landmark_base.cpp
+++ b/src/landmark/landmark_base.cpp
@@ -153,7 +153,7 @@ bool LandmarkBase::isConstrainedBy(const FactorBasePtr &_factor) const
         return false;
 }
 
-void LandmarkBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void LandmarkBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Lmk" << id() << " " << getType();
     if (_constr_by)
@@ -189,9 +189,9 @@ void LandmarkBase::printHeader(int _depth, std::ostream& _stream, bool _constr_b
     }
 }
 
-void LandmarkBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void LandmarkBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
 }
 LandmarkBasePtr LandmarkBase::create(const YAML::Node& _node)
 {
diff --git a/src/map/map_base.cpp b/src/map/map_base.cpp
index 6dc86a98e..bfd799e68 100644
--- a/src/map/map_base.cpp
+++ b/src/map/map_base.cpp
@@ -90,15 +90,15 @@ std::string MapBase::dateTimeNow()
     return date_time;
 }
 
-void MapBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void MapBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Map" << ((_depth < 1) ? ("        -- " + std::to_string(getLandmarkList().size()) + "L") : "") << std::endl;
 }
-void MapBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void MapBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
     if (_depth >= 1)
         for (auto L : getLandmarkList())
-            L->print(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs + "  ");
+            L->print(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs + "  ");
 }
 } // namespace wolf
diff --git a/src/problem/problem.cpp b/src/problem/problem.cpp
index edd4a25e2..5854fc0e2 100644
--- a/src/problem/problem.cpp
+++ b/src/problem/problem.cpp
@@ -952,17 +952,17 @@ void Problem::saveMap(const std::string& _filename_dot_yaml, const std::string&
     getMap()->save(_filename_dot_yaml, _map_name);
 }
 
-void Problem::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks) const
+void Problem::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream) const
 {
 
     _stream << std::endl;
     _stream << "P: wolf tree status ---------------------" << std::endl;
 
-    getHardware()->print(_depth, _stream, _constr_by, _metric, _state_blocks);
+    getHardware()->print(_depth, _constr_by, _metric, _state_blocks, _stream, "");
 
-    getTrajectory()->print(_depth, _stream, _constr_by, _metric, _state_blocks);
+    getTrajectory()->print(_depth, _constr_by, _metric, _state_blocks, _stream, "");
 
-    getMap()->print(_depth, _stream, _constr_by, _metric, _state_blocks);
+    getMap()->print(_depth, _constr_by, _metric, _state_blocks, _stream, "");
 
     _stream << "-----------------------------------------" << std::endl;
     _stream << std::endl;
@@ -1615,10 +1615,6 @@ bool Problem::check(int _verbose_level) const
 {
     return check((_verbose_level > 0), std::cout);
 }
-void Problem::print(int depth, bool constr_by, bool metric, bool state_blocks) const
-{
-    print(depth, std::cout, constr_by, metric, state_blocks);
-}
 void Problem::print(const std::string& depth, bool constr_by, bool metric, bool state_blocks) const
 {
     if (depth.compare("T") == 0)
diff --git a/src/processor/processor_base.cpp b/src/processor/processor_base.cpp
index bfcf89fa1..cb9d38a00 100644
--- a/src/processor/processor_base.cpp
+++ b/src/processor/processor_base.cpp
@@ -196,14 +196,14 @@ void BufferPackKeyFrame::print(void) const
     std::cout << "]" << std::endl;
 }
 
-void ProcessorBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void ProcessorBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Prc" << id() << " " << getType() << " \"" << getName() << "\"" << std::endl;
 
 }
 
-void ProcessorBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void ProcessorBase::print(int _depth, bool _metric, bool _state_blocks, bool _constr_by, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
 }
 } // namespace wolf
diff --git a/src/processor/processor_motion.cpp b/src/processor/processor_motion.cpp
index 9c512a923..317668b76 100644
--- a/src/processor/processor_motion.cpp
+++ b/src/processor/processor_motion.cpp
@@ -660,7 +660,7 @@ bool ProcessorMotion::storeCapture(CaptureBasePtr _cap_ptr)
   return false;
 }
 
-void ProcessorMotion::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void ProcessorMotion::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "PrcM" << id() << " " << getType() << " \"" << getName() << "\"" << std::endl;
     if (getOrigin())
diff --git a/src/processor/processor_tracker.cpp b/src/processor/processor_tracker.cpp
index 2a1703b3d..5e1203d15 100644
--- a/src/processor/processor_tracker.cpp
+++ b/src/processor/processor_tracker.cpp
@@ -322,7 +322,7 @@ bool ProcessorTracker::storeCapture(CaptureBasePtr _cap_ptr)
   return false;
 }
 
-void ProcessorTracker::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void ProcessorTracker::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "PrcT" << id() << " " << getType() << " \"" << getName() << "\"" << std::endl;
     if (getOrigin())
diff --git a/src/sensor/sensor_base.cpp b/src/sensor/sensor_base.cpp
index 4089d3c95..c91633531 100644
--- a/src/sensor/sensor_base.cpp
+++ b/src/sensor/sensor_base.cpp
@@ -467,7 +467,7 @@ void SensorBase::link(HardwareBasePtr _hw_ptr)
     }
 }
 
-void SensorBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void SensorBase::printHeader(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Sen" << id() << " " << getType() << " \"" << getName() << "\"";
     if (_depth < 2)
@@ -509,12 +509,12 @@ void SensorBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by,
     }
 }
 
-void SensorBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void SensorBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
 
     if (_depth >= 2)
         for (auto p : getProcessorList())
-            p->print(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs + "  ");
+            p->print(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs + "  ");
 }
 } // namespace wolf
diff --git a/src/trajectory/trajectory_base.cpp b/src/trajectory/trajectory_base.cpp
index 087b79af9..b7e7d0155 100644
--- a/src/trajectory/trajectory_base.cpp
+++ b/src/trajectory/trajectory_base.cpp
@@ -136,16 +136,16 @@ FrameBasePtr TrajectoryBase::closestKeyOrAuxFrameToTimeStamp(const TimeStamp& _t
     return closest_kf;
 }
 
-void TrajectoryBase::printHeader(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void TrajectoryBase::printHeader(int _depth, bool _metric, bool _state_blocks, bool _constr_by, std::ostream& _stream, std::string _tabs) const
 {
     _stream << _tabs << "Trajectory" << ((_depth < 1) ? (" -- " + std::to_string(getFrameList().size()) + "F") : "")  << std::endl;
 }
-void TrajectoryBase::print(int _depth, std::ostream& _stream, bool _constr_by, bool _metric, bool _state_blocks, std::string _tabs) const
+void TrajectoryBase::print(int _depth, bool _constr_by, bool _metric, bool _state_blocks, std::ostream& _stream, std::string _tabs) const
 {
-    printHeader(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs);
+    printHeader(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs);
     if (_depth >= 1)
         for (auto F : getFrameList())
-            F->print(_depth, _stream, _constr_by, _metric, _state_blocks, _tabs + "  ");
+            F->print(_depth, _constr_by, _metric, _state_blocks, _stream, _tabs + "  ");
 
 }
 } // namespace wolf
diff --git a/test/gtest_capture_base.cpp b/test/gtest_capture_base.cpp
index 81271d9af..4c004cd72 100644
--- a/test/gtest_capture_base.cpp
+++ b/test/gtest_capture_base.cpp
@@ -88,7 +88,7 @@ TEST(CaptureBase, print)
     // FeatureBasePtr f = C->addFeature(std::make_shared<FeatureBase>("DUMMY", Vector2d::Zero(), Matrix2d::Identity()));
     auto f = FeatureBase::emplace<FeatureBase>(C, "DUMMY", Vector2d::Zero(), Matrix2d::Identity());
 
-    C->print(4, std::cout, 1, 1, 1);
+    C->print(4, 1, 1, 1);
 }
 
 TEST(CaptureBase, process)
-- 
GitLab