15 PID(const T& kp, const T& ki, const T& kd);
18 T CalcControlValue(const T& diff);
19 void SetClip(const T& clipMin, const T& clipMax);
24 PID<T>::PID(const T& kp, const T& ki, const T& kd)
25 : m_kp(kp), m_ki(ki), m_kd(kd), m_clipMin(0), m_clipMax(-1), m_prevDiff(0), m_sumDiff(0)
35 T PID<T>::CalcControlValue(const T& diff)
37 T val = m_kp * diff + m_kd * (diff - m_prevDiff) + m_ki * m_sumDiff;
41 if(m_clipMin <= m_clipMax){
53 void PID<T>::SetClip(const T& clipMin, const T& clipMax)
60 void PID<T>::ResetPrevDiff()