swift
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
swift::misc::aviation::CFlightPlan Class Reference

Value object for a flight plan. More...

Inheritance diagram for swift::misc::aviation::CFlightPlan:
[legend]

Public Types

enum  FlightRules {
  VFR = 0 , IFR , SVFR , DVFR ,
  UNKNOWN
}
 Flight rules (VFR or IFR) More...
 
enum  ColumnIndex {
  IndexCallsign = CPropertyIndexRef::GlobalIndexCFlightPlan , IndexOriginAirportIcao , IndexDestinationAirportIcao , IndexAlternateAirportIcao ,
  IndexRemarks
}
 Properties by index.
 
- Public Types inherited from swift::misc::CValueObject< CFlightPlan >
using base_type = CEmpty
 Base class.
 
- Public Types inherited from swift::misc::CEmpty
using base_type = CEmpty
 Base class is alias of itself.
 
- Public Types inherited from swift::misc::mixin::Index< Derived >
enum  ColumnIndex { IndexPixmap = 10 , IndexIcon , IndexString }
 Base class enums.
 
- Public Types inherited from swift::misc::ITimestampBased
enum  ColumnIndex {
  IndexUtcTimestamp = CPropertyIndexRef::GlobalIndexITimestampBased , IndexUtcTimestampFormattedYmdhms , IndexUtcTimestampFormattedYmdhmsz , IndexUtcTimestampFormattedMdhms ,
  IndexUtcTimestampFormattedMdhmsz , IndexUtcTimestampFormattedDhms , IndexUtcTimestampFormattedHms , IndexUtcTimestampFormattedHm ,
  IndexMSecsSinceEpoch
}
 Properties by index.
 

Public Member Functions

 CFlightPlan ()=default
 Default constructor.
 
 CFlightPlan (const CCallsign &callsign, const CFlightPlanAircraftInfo &aircraftInfo, const CAirportIcaoCode &originAirportIcao, const CAirportIcaoCode &destinationAirportIcao, const CAirportIcaoCode &alternateAirportIcao, const QDateTime &takeoffTimePlanned, const QDateTime &takeoffTimeActual, const physical_quantities::CTime &enrouteTime, const physical_quantities::CTime &fuelTime, const CAltitude &cruiseAltitude, const physical_quantities::CSpeed &cruiseTrueAirspeed, FlightRules flightRules, const QString &route, const QString &remarks)
 Constructor.
 
void setCallsign (const CCallsign &callsign)
 Callsign (of aircraft)
 
void setAircraftInfo (const CFlightPlanAircraftInfo &aircraftInfo)
 Set information about the aircraft used in this flightplan.
 
void setOriginAirportIcao (const QString &originAirportIcao)
 Set origin airport ICAO code.
 
void setOriginAirportIcao (const CAirportIcaoCode &originAirportIcao)
 Set origin airport ICAO code.
 
void setDestinationAirportIcao (const QString &destinationAirportIcao)
 Set destination airport ICAO code.
 
void setDestinationAirportIcao (const CAirportIcaoCode &destinationAirportIcao)
 Set destination airport ICAO code.
 
void setAlternateAirportIcao (const QString &alternateAirportIcao)
 Set alternate destination airport ICAO code.
 
void setAlternateAirportIcao (const CAirportIcaoCode &alternateAirportIcao)
 Set alternate destination airport ICAO code.
 
void setTakeoffTimePlanned (const QDateTime &takeoffTimePlanned)
 Set planned takeoff time.
 
void setTakeoffTimePlanned (const QString &time)
 Set planned takeoff time hh:mm.
 
void setTakeoffTimeActual (const QDateTime &takeoffTimeActual)
 Set actual takeoff time (reserved for ATC use)
 
void setTakeoffTimeActual (const QString &time)
 Set actual takeoff time hh:mm.
 
void setEnrouteTime (const physical_quantities::CTime &enrouteTime)
 Set planned enroute flight time.
 
void setFuelTime (const physical_quantities::CTime &fuelTime)
 Set amount of fuel load in time.
 
void setFuelTime (const QString &fuelTime)
 Set amount of fuel load in time hh:mm.
 
void setCruiseAltitude (const CAltitude &cruiseAltitude)
 Set planned cruise altitude.
 
void setCruiseAltitudeString (const QString &altitudeString)
 Cruising altitude already as string.
 
void setCruiseTrueAirspeed (const physical_quantities::CSpeed &cruiseTrueAirspeed)
 Set planned cruise TAS.
 
void setFlightRule (FlightRules flightRule)
 Set flight rules (VFR or IFR)
 
void setFlightRule (const QString &flightRule)
 Set flight rules (VFR or IFR)
 
void setRoute (const QString &route)
 Set route string.
 
void setRemarks (const QString &remarks)
 Set remarks string (max 100 characters)
 
void setVoiceCapabilities (const QString &capabilities)
 Set voice capabilities.
 
void setWhenLastSentOrLoaded (const QDateTime &dateTime)
 When last sent.
 
const CCallsigngetCallsign () const
 Aircraft callsign.
 
bool hasCallsign () const
 Has callsign?
 
const CAirportIcaoCodegetOriginAirportIcao () const
 Get origin airport ICAO code.
 
const CAirportIcaoCodegetDestinationAirportIcao () const
 Get destination airport ICAO code.
 
const CAirportIcaoCodegetAlternateAirportIcao () const
 Get alternate destination airport ICAO code.
 
const QDateTime & getTakeoffTimePlanned () const
 Get planned takeoff time (planned)
 
QString getTakeoffTimePlannedHourMin () const
 Get planned takeoff time (planned)
 
const QDateTime & getTakeoffTimeActual () const
 Get actual takeoff time (actual)
 
QString getTakeoffTimeActualHourMin () const
 Get actual takeoff time (actual)
 
const physical_quantities::CTimegetEnrouteTime () const
 Get planned enroute flight time.
 
QString getEnrouteTimeHourMin () const
 Get planned enroute flight time.
 
const physical_quantities::CTimegetFuelTime () const
 Get amount of fuel load in time.
 
QString getFuelTimeHourMin () const
 Get amount of fuel load in time.
 
const CAltitudegetCruiseAltitude () const
 Cruising altitudes.
 
const QString & getCruiseAltitudeString () const
 Cruising altitude already as string.
 
const physical_quantities::CSpeedgetCruiseTrueAirspeed () const
 Get planned cruise TAS.
 
FlightRules getFlightRules () const
 Get flight rules as in FlightRules.
 
QString getFlightRulesAsString () const
 Get flight rules as in FlightRules as string.
 
const QString & getRoute () const
 Get route string.
 
const QDateTime whenLastSentOrLoaded () const
 When last sent.
 
bool wasSentOrLoaded () const
 Flight plan already sent.
 
qint64 timeDiffSentOrLoadedMs () const
 Received before n ms.
 
const QString & getRemarks () const
 Get remarks string.
 
const CFlightPlanRemarksgetFlightPlanRemarks () const
 Get the parsable remarks.
 
void setFlightPlanRemarks (const CFlightPlanRemarks &remarks)
 Set FP remarks.
 
CFlightPlanAircraftInfo getAircraftInfo () const
 Get ICAO aircraft NAV/COM equipment.
 
QVariant propertyByIndex (CPropertyIndexRef index) const
 Property by index. More...
 
void setPropertyByIndex (CPropertyIndexRef index, const QVariant &variant)
 Set property by index. More...
 
CIcons::IconIndex toIcon () const
 As icon, not implemented by all classes. More...
 
QString convertToQString (bool i18n=false) const
 Cast as QString. More...
 
QString asHTML (bool i18n=false) const
 As HTML.
 
- Public Member Functions inherited from swift::misc::mixin::MetaType< Derived >
int getMetaTypeId () const
 Returns the Qt meta type ID of this object. More...
 
QString getClassName () const
 Class name.
 
bool isA (int metaTypeId) const
 Returns true if this object is an instance of the class with the given meta type ID, or one of its subclasses.
 
- Public Member Functions inherited from swift::misc::mixin::DBusByMetaClass< Derived, Tags >
void marshallToDbus (QDBusArgument &arg, Tags...) const
 Marshall without begin/endStructure, for when composed within another object.
 
void unmarshallFromDbus (const QDBusArgument &arg, Tags...)
 Unmarshall without begin/endStructure, for when composed within another object.
 
- Public Member Functions inherited from swift::misc::mixin::DataStreamByMetaClass< Derived >
void marshalToDataStream (QDataStream &stream) const
 Marshal a value to a QDataStream.
 
void unmarshalFromDataStream (QDataStream &stream)
 Unmarshal a value from a QDataStream.
 
- Public Member Functions inherited from swift::misc::mixin::JsonByMetaClass< Derived >
QJsonObject toJson () const
 Cast to JSON object.
 
QString toJsonString (QJsonDocument::JsonFormat format=QJsonDocument::Indented) const
 Convenience function JSON as string.
 
void convertFromJson (const QJsonObject &json)
 Assign from JSON object.
 
void convertFromJson (const QString &jsonString, bool acceptCacheFormat=false)
 Assign from JSON object string.
 
- Public Member Functions inherited from swift::misc::mixin::String< Derived >
QString toQString (bool i18n=false) const
 Cast as QString.
 
std::string toStdString (bool i18n=false) const
 To std string.
 
QString stringForStreaming () const
 String for streaming operators.
 
- Public Member Functions inherited from swift::misc::mixin::Index< Derived >
CPropertyIndexList apply (const CPropertyIndexVariantMap &indexMap, bool skipEqualValues=false)
 Update by variant map. More...
 
void setPropertyByIndex (CPropertyIndexRef index, const QVariant &variant)
 Set property by index.
 
QVariant propertyByIndex (CPropertyIndexRef index) const
 Property by index.
 
int comparePropertyByIndex (CPropertyIndexRef index, const Derived &compareValue) const
 Compare for index.
 
bool equalsPropertyByIndex (const QVariant &compareValue, CPropertyIndexRef index) const
 Is given variant equal to value of property index?
 
- Public Member Functions inherited from swift::misc::mixin::Icon< Derived, IconIndex >
CIcons::IconIndex toIcon () const
 As icon, not implemented by all classes.
 
- Public Member Functions inherited from swift::misc::ITimestampBased
QDateTime getUtcTimestamp () const
 Get timestamp.
 
qint64 getMSecsSinceEpoch () const
 Timestamp as ms value.
 
qint64 getTimeDifferenceMs (qint64 compareTime) const
 Time difference in ms.
 
qint64 getTimeDifferenceAbsMs (qint64 compareTime) const
 Time difference in ms.
 
qint64 getTimeDifferenceToNowMs () const
 Time difference to now.
 
qint64 getTimeDifferenceMs (const ITimestampBased &compare) const
 Time difference in ms.
 
qint64 getAbsTimeDifferenceMs (qint64 compareTime) const
 Time difference in ms.
 
qint64 getAbsTimeDifferenceMs (const ITimestampBased &compare) const
 Time difference in ms.
 
void setTimestampToNull ()
 Set to null.
 
void setMSecsSinceEpoch (qint64 mSecsSinceEpoch)
 Timestamp as ms value.
 
void setByYearMonthDayHourMinute (const QString &yyyyMMddhhmmss)
 Set by value such as "20141003231045".
 
void setUtcTimestamp (const QDateTime &timestamp)
 Set timestamp.
 
bool isNewerThan (const ITimestampBased &otherTimestampObj) const
 Is this newer than other?
 
bool isNewerThan (qint64 mSecsSinceEpoch) const
 Is newer than epoch value?
 
bool isOlderThan (const ITimestampBased &otherTimestampObj) const
 Is this older than other?
 
bool isOlderThan (qint64 mSecsSinceEpoch) const
 Is this older than other?
 
bool isOlderThanNowMinusOffset (int offsetMs) const
 Older than now-offset.
 
bool isSame (const ITimestampBased &otherTimestampObj) const
 Same timestamp.
 
qint64 msecsTo (const ITimestampBased &otherTimestampObj) const
 Time difference.
 
qint64 absMsecsTo (const ITimestampBased &otherTimestampObj) const
 Time difference.
 
qint64 msecsToNow () const
 Milliseconds to now.
 
void setCurrentUtcTime ()
 Set the current time as timestamp.
 
void addMsecs (qint64 ms)
 Add the given number of milliseconds to the timestamp.
 
QString getFormattedUtcTimestampHms () const
 As hh:mm:ss.
 
QString getFormattedUtcTimestampHmsz () const
 As hh:mm:ss.zzz.
 
QString getFormattedUtcTimestampHm () const
 As hh:mm.
 
QString getFormattedUtcTimestampDhms () const
 As dd HH mm ss.
 
QString getFormattedUtcTimestampMdhms () const
 As MM dd HH mm ss.
 
QString getFormattedUtcTimestampMdhmsz () const
 As MM dd HH mm ss.zzz.
 
QString getFormattedUtcTimestampYmdhms () const
 As yyyy MM dd HH mm ss.
 
QString getFormattedUtcTimestampYmdhmsz () const
 As yyyy MM dd HH mm ss.zzz.
 
bool hasValidTimestamp () const
 Valid timestamp?
 

Static Public Member Functions

static const QStringList & getLogCategories ()
 The log. catgeories.
 
static CFlightPlan fromSB4Format (const QString &sbData)
 From SB4 data.
 
static CFlightPlan fromSimBriefFormat (const QString &simBrief)
 From SimBrief format (XML)
 
static CFlightPlan fromMultipleFormats (const QString &data, const QString &fileSuffix)
 From multiple formats.
 
static CFlightPlan loadFromMultipleFormats (const QString &fileName, CStatusMessageList *msgs=nullptr)
 Load from multiple formats.
 
static const QString & flightRulesToString (FlightRules rules)
 Rules to string.
 
static FlightRules stringToFlightRules (const QString &flightRules)
 String to flight rules.
 
static const QStringList & flightRules ()
 All rules as string.
 
static bool isVFRRules (FlightRules rule)
 Is rule a VFR rule?
 
static bool isVFRRules (const QString &rule)
 Is rule a VFR rule?
 
static bool isIFRRules (FlightRules rule)
 Is rule a IFR rule?
 
static bool isIFRRules (const QString &rule)
 Is rule a IFR rule?
 
- Static Public Member Functions inherited from swift::misc::mixin::MetaType< Derived >
static void registerMetadata ()
 Register metadata.
 
- Static Public Member Functions inherited from swift::misc::mixin::JsonByMetaClass< Derived >
template<class DerivedObj = Derived>
static DerivedObj fromJson (const QJsonObject &json)
 Get object from QJsonObject.
 
template<class DerivedObj = Derived>
static DerivedObj fromJson (const QString &jsonString, bool acceptCacheJson=false)
 Get object from JSON string.
 
template<class DerivedObj = Derived>
static DerivedObj fromJsonNoThrow (const QString &jsonString, bool acceptCacheJson, bool &success, QString &errMsg)
 Get object from JSON string.
 
- Static Public Member Functions inherited from swift::misc::ITimestampBased
static bool isAnyTimestampIndex (int index)
 Any of the timestamp indexes.
 
static bool canHandleIndex (CPropertyIndexRef index)
 Can given index be handled.
 

Static Public Attributes

static constexpr int MaxRemarksLength = 512
 Max.remarks length. More...
 
static constexpr int MaxRouteLength = 512
 Max.route length.
 
static constexpr int MaxRouteAndRemarksLength = 624
 Max.length for Route and Remarks.
 

Additional Inherited Members

- Protected Member Functions inherited from swift::misc::CValueObject< CFlightPlan >
 CValueObject ()=default
 Default constructor.
 
 CValueObject (const CValueObject &)=default
 Copy constructor.
 
CValueObjectoperator= (const CValueObject &)=default
 Copy assignment operator.
 
 ~CValueObject ()=default
 Destructor.
 
 CEmpty ()=default
 Inheriting constructors.
 
 CEmpty (const CEmpty &)=default
 Inheriting constructors.
 
- Protected Member Functions inherited from swift::misc::CEmpty
 CEmpty ()=default
 Protected default constructor.
 
 CEmpty (const CEmpty &)=default
 Protected copy constructor.
 
CEmptyoperator= (const CEmpty &)=default
 Protected copy assignment operator.
 
 ~CEmpty ()=default
 Non-virtual protected destructor.
 
- Protected Member Functions inherited from swift::misc::ITimestampBased
 ITimestampBased ()
 Constructor.
 
 ITimestampBased (qint64 msSincePoch)
 Constructor.
 
 ITimestampBased (const QDateTime &timestamp)
 Constructor.
 
QVariant propertyByIndex (CPropertyIndexRef index) const
 Property by index. More...
 
void setPropertyByIndex (CPropertyIndexRef index, const QVariant &variant)
 Set property by index. More...
 
int comparePropertyByIndex (CPropertyIndexRef index, const ITimestampBased &compareValue) const
 Compare for index. More...
 
void updateMissingParts (const ITimestampBased &other)
 Update missing parts.
 
- Protected Attributes inherited from swift::misc::ITimestampBased
qint64 m_timestampMSecsSinceEpoch = -1
 timestamp value
 

Detailed Description

Value object for a flight plan.

Definition at line 147 of file flightplan.h.

Member Enumeration Documentation

◆ FlightRules

Flight rules (VFR or IFR)

Enumerator
VFR 

Visual flight rules.

IFR 

Instrument flight rules.

SVFR 

Special VFR (reserved for ATC use),.

DVFR 

Defense VFR.

UNKNOWN 

Unknown.

Definition at line 154 of file flightplan.h.

Member Function Documentation

◆ convertToQString()

QString swift::misc::aviation::CFlightPlan::convertToQString ( bool  i18n = false) const

Cast as QString.

Definition at line 307 of file flightplan.cpp.

◆ propertyByIndex()

QVariant swift::misc::aviation::CFlightPlan::propertyByIndex ( CPropertyIndexRef  index) const

Property by index.

Definition at line 261 of file flightplan.cpp.

◆ setPropertyByIndex()

void swift::misc::aviation::CFlightPlan::setPropertyByIndex ( CPropertyIndexRef  index,
const QVariant &  variant 
)

Set property by index.

Definition at line 278 of file flightplan.cpp.

◆ toIcon()

CIcons::IconIndex swift::misc::aviation::CFlightPlan::toIcon ( ) const

As icon, not implemented by all classes.

Definition at line 656 of file flightplan.cpp.

Member Data Documentation

◆ MaxRemarksLength

constexpr int swift::misc::aviation::CFlightPlan::MaxRemarksLength = 512
staticconstexpr

Max.remarks length.

Fixme:
max.length of complete flight plan is 768 characters, this here is an assumption and should be part of the underlying network layers

Definition at line 176 of file flightplan.h.


The documentation for this class was generated from the following files: