Move the constructor and destructor for DenseSchurComplementSolver
Change-Id: I8d852c3e6af28d6d70742f0d1607154d47bec9bd
diff --git a/internal/ceres/schur_complement_solver.cc b/internal/ceres/schur_complement_solver.cc
index 866fd67..90e1d51 100644
--- a/internal/ceres/schur_complement_solver.cc
+++ b/internal/ceres/schur_complement_solver.cc
@@ -1,5 +1,5 @@
// Ceres Solver - A fast non-linear least squares minimizer
-// Copyright 2015 Google Inc. All rights reserved.
+// Copyright 2022 Google Inc. All rights reserved.
// http://ceres-solver.org/
//
// Redistribution and use in source and binary forms, with or without
@@ -173,6 +173,12 @@
return summary;
}
+DenseSchurComplementSolver::DenseSchurComplementSolver(
+ const LinearSolver::Options& options)
+ : SchurComplementSolver(options),
+ cholesky_(DenseCholesky::Create(options)) {}
+
+DenseSchurComplementSolver::~DenseSchurComplementSolver() {}
// Initialize a BlockRandomAccessDenseMatrix to store the Schur
// complement.
diff --git a/internal/ceres/schur_complement_solver.h b/internal/ceres/schur_complement_solver.h
index 60af043..dac5545 100644
--- a/internal/ceres/schur_complement_solver.h
+++ b/internal/ceres/schur_complement_solver.h
@@ -121,7 +121,7 @@
void operator=(const SchurComplementSolver&) = delete;
// LinearSolver methods
- virtual ~SchurComplementSolver() {}
+ ~SchurComplementSolver() override;
LinearSolver::Summary SolveImpl(
BlockSparseMatrix* A,
const double* b,
@@ -154,13 +154,11 @@
// Dense Cholesky factorization based solver.
class DenseSchurComplementSolver : public SchurComplementSolver {
public:
- explicit DenseSchurComplementSolver(const LinearSolver::Options& options)
- : SchurComplementSolver(options),
- cholesky_(DenseCholesky::Create(options)) {}
+ explicit DenseSchurComplementSolver(const LinearSolver::Options& options);
DenseSchurComplementSolver(const DenseSchurComplementSolver&) = delete;
void operator=(const DenseSchurComplementSolver&) = delete;
- virtual ~DenseSchurComplementSolver() {}
+ ~DenseSchurComplementSolver() override;
private:
void InitStorage(const CompressedRowBlockStructure* bs) final;