#include <simgear/compiler.h>
-#include <plib/sg.h>
#include <plib/ul.h>
#include <Environment/environment_mgr.hxx>
#include "dynamics.hxx"
FGAirportDynamics::FGAirportDynamics(FGAirport* ap) :
- _ap(ap), rwyPrefs(ap) {
+ _ap(ap), rwyPrefs(ap), SIDs(ap) {
lastUpdate = 0;
// For testing only. This needs to be refined when we move ATIS functionality over.
// Note that the ground network should also be copied
FGAirportDynamics::FGAirportDynamics(const FGAirportDynamics& other) :
- rwyPrefs(other.rwyPrefs)
+ rwyPrefs(other.rwyPrefs),
+ SIDs(other.SIDs)
{
for (FGParkingVecConstIterator ip= other.parkings.begin(); ip != other.parkings.end(); ip++)
parkings.push_back(*(ip));
if (freqGround.size() == 0) {
return 0;
}
- if ((freqGround.size() >= leg-1) && (leg > 1)) {
+ if ((freqGround.size() > leg-1) && (leg > 1)) {
groundFreq = freqGround[leg-1];
}
if ((freqGround.size() < leg-1) && (leg > 1)) {
- groundFreq = (freqGround.size() < (leg-2)) ? freqGround[freqGround.size()-1] : freqGround[leg-2];
+ groundFreq = (freqGround.size() < (leg-1)) ? freqGround[freqGround.size()-1] : freqGround[leg-2];
}
if ((freqGround.size() >= leg-1) && (leg > 1)) {
groundFreq = freqGround[leg-2];
}
return groundFreq;
-}
\ No newline at end of file
+}
+
+FGAIFlightPlan *FGAirportDynamics::getSID(string activeRunway, double heading)
+{
+ return SIDs.getBest(activeRunway, heading);
+}