Skip to content

Commit a7048b2

Browse files
Use constructor for Gains directly
1 parent 067e6f1 commit a7048b2

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

control_toolbox/include/control_toolbox/pid.hpp

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -792,7 +792,13 @@ class Pid
792792
// blocking the realtime update loop
793793
realtime_tools::RealtimeThreadSafeBox<Gains> gains_box_;
794794
// local copy of the gains for the RT loop
795-
Gains gains_;
795+
Gains gains_{
796+
0.0,
797+
0.0,
798+
0.0,
799+
std::numeric_limits<double>::infinity(),
800+
-std::numeric_limits<double>::infinity(),
801+
AntiWindupStrategy()};
796802

797803
double p_error_last_ = 0; /** Save state for derivative state calculation. */
798804
double p_error_ = 0; /** Error. */

control_toolbox/src/pid.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ constexpr double UMAX_INFINITY = std::numeric_limits<double>::infinity();
5050
#pragma GCC diagnostic push
5151
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
5252
Pid::Pid(double p, double i, double d, double i_max, double i_min, bool antiwindup)
53-
: gains_(0.0, 0.0, 0.0, 0.0, 0.0, AntiWindupStrategy())
5453
{
5554
if (i_min > i_max)
5655
{
@@ -73,7 +72,6 @@ Pid::Pid(double p, double i, double d, double i_max, double i_min, bool antiwind
7372
Pid::Pid(
7473
double p, double i, double d, double u_max, double u_min,
7574
const AntiWindupStrategy & antiwindup_strat)
76-
: gains_(0.0, 0.0, 0.0, 0.0, 0.0, AntiWindupStrategy())
7775
{
7876
if (u_min > u_max)
7977
{
@@ -87,7 +85,7 @@ Pid::Pid(
8785
reset();
8886
}
8987

90-
Pid::Pid(const Pid & source) : gains_(0.0, 0.0, 0.0, 0.0, 0.0, AntiWindupStrategy())
88+
Pid::Pid(const Pid & source)
9189
{
9290
// Copy the realtime box to the new PID class
9391
gains_box_ = source.gains_box_;

0 commit comments

Comments
 (0)