4#ifndef SWIFT_MISC_AVIATION_FLIGHTPLAN_AIRCRAFT_INFO_H
5#define SWIFT_MISC_AVIATION_FLIGHTPLAN_AIRCRAFT_INFO_H
10#include "misc/aviation/comnavequipment.h"
11#include "misc/aviation/ssrequipment.h"
12#include "misc/aviation/waketurbulencecategory.h"
18namespace swift::misc::aviation
24 CFlightPlanAircraftInfo() =
default;
32 explicit CFlightPlanAircraftInfo(
QString equipmentCodeAndAircraft);
68 void parseIcaoEquipmentCode(
const QString &equipment);
69 void parseFaaEquipmentCode(
const QString &equipment);
70 void parseUnknownEquipmentCode(
74 CFlightPlanAircraftInfo,
Value object for ICAO classification.
ICAO flightplan field 10a.
Flightplan-related information about an aircraft (aircraft ICAO, equipment and WTC).
static QChar equipmentToFaaCode(const CComNavEquipment &equip, const CSsrEquipment &ssr)
Transform ICAO-based COM/NAV and SSR equipment to a single character FAA equipment code.
CWakeTurbulenceCategory getWtc() const
Get Wake Turbulence Category.
QString asIcaoString() const
Full string in ICAO format: "AIRCRAFT_ICAO/WTC-EQUIPMENT/SSR".
CSsrEquipment getSsrEquipment() const
Get SSR equipment.
static std::tuple< CComNavEquipment, CSsrEquipment > faaCodeToEquipment(QChar equipmentCode)
Transform single character FAA equipment code to ICAO-based COM/NAV and SSR equipment.
QString convertToQString(bool i18n=false) const
Cast as QString.
QString asFaaString() const
Full string in FAA format: "H/J (if heavy/super)/AIRCRAFT_ICAO/EQUIPMENT-CODE".
CAircraftIcaoCode getAircraftIcao() const
Get Aircraft ICAO.
CComNavEquipment getComNavEquipment() const
Get COM/NAV equipment.
ICAO flightplan field 10b.
ICAO wake turbulence category.
#define SWIFT_MISC_EXPORT
Export a class or function from the library.
#define SWIFT_DECLARE_VALUEOBJECT_MIXINS(Namespace, Class)
Explicit template declaration of mixins for a CValueObject subclass to be placed near the top of the ...