+ for (unsigned int i=0; i<Systems.size(); i++) {
+ if (Systems[i]->GetType() == "LAG" ||
+ Systems[i]->GetType() == "LEAD_LAG" ||
+ Systems[i]->GetType() == "WASHOUT" ||
+ Systems[i]->GetType() == "SECOND_ORDER_FILTER" ||
+ Systems[i]->GetType() == "INTEGRATOR")
+ {
+ ((FGFilter*)Systems[i])->ResetPastStates();
+ } else if (Systems[i]->GetType() == "PID" ) {
+ ((FGPID*)Systems[i])->ResetPastStates();
+ }
+ }
+
+ for (unsigned int i=0; i<FCSComponents.size(); i++) {
+ if (FCSComponents[i]->GetType() == "LAG" ||
+ FCSComponents[i]->GetType() == "LEAD_LAG" ||
+ FCSComponents[i]->GetType() == "WASHOUT" ||
+ FCSComponents[i]->GetType() == "SECOND_ORDER_FILTER" ||
+ FCSComponents[i]->GetType() == "INTEGRATOR")
+ {
+ ((FGFilter*)FCSComponents[i])->ResetPastStates();
+ } else if (FCSComponents[i]->GetType() == "PID" ) {
+ ((FGPID*)FCSComponents[i])->ResetPastStates();
+ }
+ }
+
+ for (unsigned int i=0; i<APComponents.size(); i++) {
+ if (APComponents[i]->GetType() == "LAG" ||
+ APComponents[i]->GetType() == "LEAD_LAG" ||
+ APComponents[i]->GetType() == "WASHOUT" ||
+ APComponents[i]->GetType() == "SECOND_ORDER_FILTER" ||
+ APComponents[i]->GetType() == "INTEGRATOR")
+ {
+ ((FGFilter*)APComponents[i])->ResetPastStates();
+ } else if (APComponents[i]->GetType() == "PID" ) {
+ ((FGPID*)APComponents[i])->ResetPastStates();
+ }
+ }
+