mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 16:40:38 +08:00
Remove ceres::LocalParameterization
Change-Id: I3bdf2f6a8857db10c984024a27f490eefd23fefa
This commit is contained in:
@@ -59,7 +59,6 @@ namespace ceres {
|
||||
class CostFunction;
|
||||
class EvaluationCallback;
|
||||
class LossFunction;
|
||||
class LocalParameterization;
|
||||
struct CRSMatrix;
|
||||
|
||||
namespace internal {
|
||||
@@ -100,10 +99,6 @@ class CERES_NO_EXPORT ProblemImpl {
|
||||
}
|
||||
|
||||
void AddParameterBlock(double* values, int size);
|
||||
void AddParameterBlock(double* values,
|
||||
int size,
|
||||
LocalParameterization* local_parameterization);
|
||||
|
||||
void AddParameterBlock(double* values, int size, Manifold* manifold);
|
||||
|
||||
void RemoveResidualBlock(ResidualBlock* residual_block);
|
||||
@@ -113,11 +108,6 @@ class CERES_NO_EXPORT ProblemImpl {
|
||||
void SetParameterBlockVariable(double* values);
|
||||
bool IsParameterBlockConstant(const double* values) const;
|
||||
|
||||
void SetParameterization(double* values,
|
||||
LocalParameterization* local_parameterization);
|
||||
const LocalParameterization* GetParameterization(const double* values) const;
|
||||
bool HasParameterization(const double* values) const;
|
||||
|
||||
void SetManifold(double* values, Manifold* manifold);
|
||||
const Manifold* GetManifold(const double* values) const;
|
||||
bool HasManifold(const double* values) const;
|
||||
@@ -180,10 +170,6 @@ class CERES_NO_EXPORT ProblemImpl {
|
||||
|
||||
private:
|
||||
ParameterBlock* InternalAddParameterBlock(double* values, int size);
|
||||
void InternalSetParameterization(
|
||||
double* values,
|
||||
ParameterBlock* parameter_block,
|
||||
LocalParameterization* local_parameterization);
|
||||
void InternalSetManifold(double* values,
|
||||
ParameterBlock* parameter_block,
|
||||
Manifold* manifold);
|
||||
@@ -218,12 +204,6 @@ class CERES_NO_EXPORT ProblemImpl {
|
||||
// objects and reference counting for CostFunctions and LossFunctions. Ideally
|
||||
// this should be done uniformly.
|
||||
|
||||
// When removing parameter blocks, parameterizations have ambiguous
|
||||
// ownership. Instead of scanning the entire problem to see if the
|
||||
// parameterization is shared with other parameter blocks, buffer
|
||||
// them until destruction.
|
||||
std::vector<LocalParameterization*> local_parameterizations_to_delete_;
|
||||
|
||||
// When removing parameter blocks, manifolds have ambiguous
|
||||
// ownership. Instead of scanning the entire problem to see if the
|
||||
// manifold is shared with other parameter blocks, buffer
|
||||
@@ -236,17 +216,6 @@ class CERES_NO_EXPORT ProblemImpl {
|
||||
// destroyed.
|
||||
CostFunctionRefCount cost_function_ref_count_;
|
||||
LossFunctionRefCount loss_function_ref_count_;
|
||||
|
||||
// Because we wrap LocalParameterization objects using a ManifoldAdapter, when
|
||||
// the user calls GetParameterization we cannot use the same logic as
|
||||
// GetManifold as the ParameterBlock object only returns a Manifold object. So
|
||||
// this map stores the association between parameter blocks and local
|
||||
// parameterizations.
|
||||
//
|
||||
// This is a temporary object which will be removed once the
|
||||
// LocalParameterization to Manifold transition is complete.
|
||||
std::unordered_map<const double*, LocalParameterization*>
|
||||
parameter_block_to_local_param_;
|
||||
};
|
||||
|
||||
} // namespace internal
|
||||
|
||||
Reference in New Issue
Block a user