mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-05 09:15:34 +08:00
refactor: Split InterpolationStatus related classes into separate files
This commit is contained in:
71
src/blackmisc/simulation/interpolationresult.h
Normal file
71
src/blackmisc/simulation/interpolationresult.h
Normal file
@@ -0,0 +1,71 @@
|
||||
// SPDX-FileCopyrightText: Copyright (C) swift Project Community / Contributors
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
|
||||
|
||||
//! \file
|
||||
|
||||
#ifndef BLACKMISC_SIMULATION_INTERPOLATIONRESULT_H
|
||||
#define BLACKMISC_SIMULATION_INTERPOLATIONRESULT_H
|
||||
|
||||
#include "blackmisc/blackmiscexport.h"
|
||||
|
||||
#include "blackmisc/aviation/aircraftsituation.h"
|
||||
#include "blackmisc/aviation/aircraftparts.h"
|
||||
|
||||
#include "blackmisc/simulation/interpolationstatus.h"
|
||||
#include "blackmisc/simulation/partsstatus.h"
|
||||
|
||||
namespace BlackMisc::Simulation
|
||||
{
|
||||
//! Combined results
|
||||
class BLACKMISC_EXPORT CInterpolationResult
|
||||
{
|
||||
public:
|
||||
//! Ctor
|
||||
CInterpolationResult() = default;
|
||||
|
||||
//! Get situation
|
||||
const Aviation::CAircraftSituation &getInterpolatedSituation() const { return m_interpolatedSituation; }
|
||||
|
||||
//! Get parts (interpolated or guessed)
|
||||
const Aviation::CAircraftParts &getInterpolatedParts() const { return m_interpolatedParts; }
|
||||
|
||||
//! Get status
|
||||
const CInterpolationStatus &getInterpolationStatus() const { return m_interpolationStatus; }
|
||||
|
||||
//! Get status
|
||||
const CPartsStatus &getPartsStatus() const { return m_partsStatus; }
|
||||
|
||||
//! Set situation
|
||||
void setInterpolatedSituation(const Aviation::CAircraftSituation &situation) { m_interpolatedSituation = situation; }
|
||||
|
||||
//! Set parts (interpolated or guessed)
|
||||
void setInterpolatedParts(const Aviation::CAircraftParts &parts) { m_interpolatedParts = parts; }
|
||||
|
||||
//! Set values
|
||||
void setValues(const Aviation::CAircraftSituation &situation, const Aviation::CAircraftParts &parts);
|
||||
|
||||
//! Set status
|
||||
void setInterpolationStatus(const CInterpolationStatus &status) { m_interpolationStatus = status; }
|
||||
|
||||
//! Set status
|
||||
void setPartsStatus(const CPartsStatus &status) { m_partsStatus = status; }
|
||||
|
||||
//! Set status values
|
||||
void setStatus(const CInterpolationStatus &interpolation, const CPartsStatus &parts);
|
||||
|
||||
//! @{
|
||||
//! Implicit conversion
|
||||
operator const Aviation::CAircraftSituation &() const { return m_interpolatedSituation; }
|
||||
operator const Aviation::CAircraftParts &() const { return m_interpolatedParts; }
|
||||
//! @}
|
||||
|
||||
private:
|
||||
Aviation::CAircraftSituation m_interpolatedSituation = Aviation::CAircraftSituation::null(); //!< interpolated situation
|
||||
Aviation::CAircraftParts m_interpolatedParts = Aviation::CAircraftParts::null(); //!< guessed or interpolated parts
|
||||
CInterpolationStatus m_interpolationStatus; //!< interpolation status
|
||||
CPartsStatus m_partsStatus; //!< parts status
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif // BLACKMISC_SIMULATION_INTERPOLATIONRESULT_H
|
||||
Reference in New Issue
Block a user