mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 08:34:37 +08:00
CERES_EXPORT fix to compile Ceres as DLL
Below fixes are required to compile Ceres as a dynamic library using MSVC. 1. Added CERES_EXPORT to EigenQuaternionParameterization. 2. Removed CERES_EXPORT from CubicInterpolator and BicubicInterpolator. EigenQuaternionParameterization has its source embedded in ceres.dll whereas Cubic+BicubicInterpolators are defined in the header file and therefore do not require __declspec(dllimport). Change-Id: Idd1f387890c36aab51a1a4177ea7c06933b96f39
This commit is contained in:
@@ -121,7 +121,7 @@ void CubicHermiteSpline(const Eigen::Matrix<double, kDataDimension, 1>& p0,
|
||||
// double f, dfdx;
|
||||
// interpolator.Evaluator(1.5, &f, &dfdx);
|
||||
template<typename Grid>
|
||||
class CERES_EXPORT CubicInterpolator {
|
||||
class CubicInterpolator {
|
||||
public:
|
||||
explicit CubicInterpolator(const Grid& grid)
|
||||
: grid_(grid) {
|
||||
@@ -253,7 +253,7 @@ struct Grid1D {
|
||||
// interpolator.Evaluate(1.2, 2.5, &f, &dfdr, &dfdc);
|
||||
|
||||
template<typename Grid>
|
||||
class CERES_EXPORT BiCubicInterpolator {
|
||||
class BiCubicInterpolator {
|
||||
public:
|
||||
explicit BiCubicInterpolator(const Grid& grid)
|
||||
: grid_(grid) {
|
||||
|
||||
@@ -222,7 +222,7 @@ class CERES_EXPORT QuaternionParameterization : public LocalParameterization {
|
||||
//
|
||||
// Plus(x, delta) = [sin(|delta|) delta / |delta|, cos(|delta|)] * x
|
||||
// with * being the quaternion multiplication operator.
|
||||
class EigenQuaternionParameterization : public ceres::LocalParameterization {
|
||||
class CERES_EXPORT EigenQuaternionParameterization : public ceres::LocalParameterization {
|
||||
public:
|
||||
virtual ~EigenQuaternionParameterization() {}
|
||||
virtual bool Plus(const double* x,
|
||||
|
||||
Reference in New Issue
Block a user