8 using namespace swift::misc::aviation;
10 namespace swift::misc::simulation
15 : m_spline(callsign, p1, p2, p3, logger), m_linear(callsign, p1, p2, p3, logger)
20 uint32_t aircraftNumber)
24 case CInterpolationAndRenderingSetupBase::Linear:
25 return m_linear.
getInterpolation(currentTimeSinceEpoch, setup, aircraftNumber);
26 case CInterpolationAndRenderingSetupBase::Spline:
27 return m_spline.
getInterpolation(currentTimeSinceEpoch, setup, aircraftNumber);
43 return CAircraftSituation::null();
79 return (
"Illegal mode");
90 m_interpolator->attachLogger(logger);
Status messages, e.g. from Core -> GUI.
Value object encapsulating information of an aircraft's situation.
Value object encapsulating information of a callsign.
Aircraft model (used by another pilot, my models on disk)
InterpolatorMode
Interpolator type.
InterpolatorMode getInterpolatorMode() const
Interpolator mode.
Value object for interpolator and rendering per callsign.
Record internal state of interpolator for debugging.
CInterpolationResult getInterpolation(qint64 currentTimeSinceEpoch, const CInterpolationAndRenderingSetupPerCallsign &setup, uint32_t aircraftNumber)
Get interpolated situation.
void attachLogger(CInterpolationLogger *logger)
Attach an observer to read the interpolator's state for debugging.
QString getInterpolatorInfo() const
Get an interpolator info string (for debug info)
const aviation::CAircraftSituation & getLastInterpolatedSituation() const
Latest interpolation result.
const CStatusMessageList & getInterpolationMessages() const
Interpolation messages.
void initCorrespondingModel(const CAircraftModel &model={})
Init, or re-init the corressponding model.
Multiplexed interpolator which allows switching between modes at runtime.
void initCorrespondingModel(const CAircraftModel &model)
Init, or re-init the corressponding model.
CInterpolationResult getInterpolation(qint64 currentTimeSinceEpoch, const CInterpolationAndRenderingSetupPerCallsign &setup, uint32_t aircraftNumber)
Get interpolated situation.
const aviation::CAircraftSituation & getLastInterpolatedSituation(CInterpolationAndRenderingSetupBase::InterpolatorMode mode) const
Latest interpolation result.
QString getInterpolatorInfo(CInterpolationAndRenderingSetupBase::InterpolatorMode mode) const
Info string.
const CStatusMessageList & getInterpolationMessages(CInterpolationAndRenderingSetupBase::InterpolatorMode mode) const
Interpolation messages.
void attachLogger(CInterpolationLogger *logger)
Attach an observer to read the interpolator's state for debugging.
CInterpolatorMultiWrapper()
Default ctor, needed for QMap/QHash.
Direct in memory access to interpolation setup, normally implemented by simulator.
Direct thread safe in memory access to remote aircraft.
Direct in memory access to elevation data.