Skip to content

Commit a514954

Browse files
committed
complementary_filter: move const initializations out of header
Initialization of static consts other than int (here: float) inside the class declaration is not permitted in C++. It works in gcc (due to a non-standard extension), but throws an error in C++11.
1 parent 244f653 commit a514954

File tree

2 files changed

+12
-5
lines changed

2 files changed

+12
-5
lines changed

imu_complementary_filter/include/imu_complementary_filter/complementary_filter.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,12 +89,12 @@ class ComplementaryFilter
8989
double dt);
9090

9191
private:
92-
static const double kGravity = 9.81;
93-
static const double gamma_ = 0.01;
92+
static const double kGravity;
93+
static const double gamma_;
9494
// Bias estimation steady state thresholds
95-
static const double kAngularVelocityThreshold = 0.2;
96-
static const double kAccelerationThreshold = 0.1;
97-
static const double kDeltaAngularVelocityThreshold = 0.01;
95+
static const double kAngularVelocityThreshold;
96+
static const double kAccelerationThreshold;
97+
static const double kDeltaAngularVelocityThreshold;
9898

9999
// Gain parameter for the complementary filter, belongs in [0, 1].
100100
double gain_acc_;

imu_complementary_filter/src/complementary_filter.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@
3737

3838
namespace imu_tools {
3939

40+
const double ComplementaryFilter::kGravity = 9.81;
41+
const double ComplementaryFilter::gamma_ = 0.01;
42+
// Bias estimation steady state thresholds
43+
const double ComplementaryFilter::kAngularVelocityThreshold = 0.2;
44+
const double ComplementaryFilter::kAccelerationThreshold = 0.1;
45+
const double ComplementaryFilter::kDeltaAngularVelocityThreshold = 0.01;
46+
4047
ComplementaryFilter::ComplementaryFilter() :
4148
gain_acc_(0.01),
4249
gain_mag_(0.01),

0 commit comments

Comments
 (0)