15 #include <matrix/LibMatrix.h>
70 virtual const char*
type()
const;
90 virtual void taxiTo(
const DtVector& destination,
double speed);
98 virtual void taxi(
double speed,
double turnRate);
103 virtual double calculateSteering(
double turnAngle)
const;
107 virtual double approximateThrottle(
double speed);
111 virtual double calculateCurrentBrakingDistance()
const;
127 virtual void flyTo(
const DtVector& destination,
double speed);
134 virtual void flyToDirect(
const DtVector& destination,
double speed);
144 virtual void fly(
double speed,
double turnRate,
double climbRate);
154 virtual void flyFixedPitch(
double speed,
double turnRate,
double desiredPitch);
181 virtual void circle(
const DtVector& center,
double radius,
double speed,
182 double altitude,
bool clockwise =
true);
186 virtual double calcControlForRoll(
double rollRate);
201 virtual double calcControlForThrottle(
double speed,
bool& deployFlaps);
214 virtual double decelerationLimitedClimbRate(
double altitudeError,
215 double desiredSpeed,
double finalClimbRate = 0.0);
220 virtual void calcControlForTurnAndClimb(
double turnRate,
double climbRate,
221 double& stickX,
double& pedal);
227 virtual void calcControlForTurnAndPitch(
double turnRate,
double desiredPitch,
228 double& stickX,
double& pedal,
double rollRate = 0.0);
236 virtual double calculateClimbRate(
double altitude,
double climbTime)
const;
248 virtual double calculateTurnRate(
double turnAngle)
const;
253 virtual double calculateRollAngle(
double turnRate,
double speed)
258 virtual double calculateRollRate(
double rollAngle,
double turnRate);
275 virtual void calculateNormalizedBodyVelocity();
282 virtual void calculateLocalAngularVelocity();
290 virtual void calculateSpeedRatioSquared();
299 virtual void initializeControllerForTick();
303 virtual bool createFixedWingControlPortGroup();
304 virtual bool createThrottlePort();
305 virtual bool createStickPort();
306 virtual bool createPedalPort();
307 virtual bool createBrakePort();
310 virtual bool createFlapsDeployedPort();
320 virtual void setMaxThrustAcceleration(
double maxThrustAcceleration);
323 virtual void setTakeOffDir(
const DtVector& takeOffDir);
324 virtual const DtVector& takeOffDir()
const;
328 virtual DtReal maxTurningGsForTask()
const;
329 virtual DtReal maxTurnRateCutoffAngle()
const;
330 virtual DtReal maxTaxiingTurnSpeed()
const;
331 virtual DtReal taxiingNearDistance()
const;
332 virtual DtReal taxiingAtDistance()
const;
333 virtual DtReal taxiingApproachSpeed()
const;
334 virtual DtReal maxPitchAngle()
const;
335 virtual DtReal timeToTargetAltitude()
const;
341 virtual double maxTurningGs()
const;
367 virtual void lookupAndCacheProcessSR();
383 virtual void updateCurrentState();