diff --git a/include/base/ceres_wrapper/ceres_manager.h b/include/base/ceres_wrapper/ceres_manager.h
index 013fc0e03b5ec85b5b21c53e527ceed026bdf62b..23a938b343f47712da93b7ef8c19880b464e87ba 100644
--- a/include/base/ceres_wrapper/ceres_manager.h
+++ b/include/base/ceres_wrapper/ceres_manager.h
@@ -48,6 +48,11 @@ class CeresManager : public SolverManager
 
         ceres::Solver::Summary getSummary();
 
+        std::unique_ptr<ceres::Problem>& getCeresProblemPtr()
+        {
+            return ceres_problem_;
+        }
+
         virtual void computeCovariances(CovarianceBlocksToBeComputed _blocks
                                         = CovarianceBlocksToBeComputed::ROBOT_LANDMARKS) override;