mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 16:40:38 +08:00
Unify symbol visibility configuration for all compilers
This makes it possible to build unit tests with shared libraries on MSVC. Change-Id: I1db66a80b2c78c4f3d354e35235244d17bac9809
This commit is contained in:
@@ -44,17 +44,17 @@ namespace internal {
|
||||
class Program;
|
||||
|
||||
// Reorder the parameter blocks in program using the ordering
|
||||
bool ApplyOrdering(const ProblemImpl::ParameterMap& parameter_map,
|
||||
const ParameterBlockOrdering& ordering,
|
||||
Program* program,
|
||||
std::string* error);
|
||||
CERES_EXPORT_INTERNAL bool ApplyOrdering(
|
||||
const ProblemImpl::ParameterMap& parameter_map,
|
||||
const ParameterBlockOrdering& ordering,
|
||||
Program* program,
|
||||
std::string* error);
|
||||
|
||||
// Reorder the residuals for program, if necessary, so that the residuals
|
||||
// involving each E block occur together. This is a necessary condition for the
|
||||
// Schur eliminator, which works on these "row blocks" in the jacobian.
|
||||
bool LexicographicallyOrderResidualBlocks(int size_of_first_elimination_group,
|
||||
Program* program,
|
||||
std::string* error);
|
||||
CERES_EXPORT_INTERNAL bool LexicographicallyOrderResidualBlocks(
|
||||
int size_of_first_elimination_group, Program* program, std::string* error);
|
||||
|
||||
// Schur type solvers require that all parameter blocks eliminated
|
||||
// by the Schur eliminator occur before others and the residuals be
|
||||
@@ -72,7 +72,7 @@ bool LexicographicallyOrderResidualBlocks(int size_of_first_elimination_group,
|
||||
//
|
||||
// Upon return, ordering contains the parameter block ordering that
|
||||
// was used to order the program.
|
||||
bool ReorderProgramForSchurTypeLinearSolver(
|
||||
CERES_EXPORT_INTERNAL bool ReorderProgramForSchurTypeLinearSolver(
|
||||
LinearSolverType linear_solver_type,
|
||||
SparseLinearAlgebraLibraryType sparse_linear_algebra_library_type,
|
||||
const ProblemImpl::ParameterMap& parameter_map,
|
||||
@@ -90,7 +90,7 @@ bool ReorderProgramForSchurTypeLinearSolver(
|
||||
// fill-reducing ordering is available in the sparse linear algebra
|
||||
// library (SuiteSparse version >= 4.2.0) then the fill reducing
|
||||
// ordering will take it into account, otherwise it will be ignored.
|
||||
bool ReorderProgramForSparseCholesky(
|
||||
CERES_EXPORT_INTERNAL bool ReorderProgramForSparseCholesky(
|
||||
SparseLinearAlgebraLibraryType sparse_linear_algebra_library_type,
|
||||
const ParameterBlockOrdering& parameter_block_ordering,
|
||||
int start_row_block,
|
||||
@@ -107,7 +107,7 @@ bool ReorderProgramForSparseCholesky(
|
||||
// bottom_residual_blocks.size() because we allow
|
||||
// bottom_residual_blocks to contain residual blocks not present in
|
||||
// the Program.
|
||||
int ReorderResidualBlocksByPartition(
|
||||
CERES_EXPORT_INTERNAL int ReorderResidualBlocksByPartition(
|
||||
const std::unordered_set<ResidualBlockId>& bottom_residual_blocks,
|
||||
Program* program);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user