4 #include "ssrequipment.h"
8 namespace swift::misc::aviation
12 if (m_equipment == SSrEquipment()) { m_equipment = None; }
18 if (equipment.
isEmpty()) {
return; }
23 QString str = flagToString(flag);
26 equipment = equipment.
remove(str);
31 append_equipment_flag_if_exist(None);
32 append_equipment_flag_if_exist(ModeA);
33 append_equipment_flag_if_exist(ModeAC);
34 append_equipment_flag_if_exist(ModeSTypeE);
35 append_equipment_flag_if_exist(ModeSTypeH);
36 append_equipment_flag_if_exist(ModeSTypeI);
37 append_equipment_flag_if_exist(ModeSTypeL);
38 append_equipment_flag_if_exist(ModeSTypeX);
39 append_equipment_flag_if_exist(ModeSTypeP);
40 append_equipment_flag_if_exist(ModeSTypeS);
41 append_equipment_flag_if_exist(AdsBB1);
42 append_equipment_flag_if_exist(AdsBB2);
43 append_equipment_flag_if_exist(AdsBU1);
44 append_equipment_flag_if_exist(AdsBU2);
45 append_equipment_flag_if_exist(AdsBV1);
46 append_equipment_flag_if_exist(AdsBV2);
47 append_equipment_flag_if_exist(AdsCD1);
48 append_equipment_flag_if_exist(AdsCG1);
50 if (!equipment.
isEmpty() && m_equipment == SSrEquipment())
63 if (m_equipment.testFlag(flag)) list << flagToString(flag);
66 append_flag_if_exist(None);
67 append_flag_if_exist(ModeA);
68 append_flag_if_exist(ModeAC);
69 append_flag_if_exist(ModeSTypeE);
70 append_flag_if_exist(ModeSTypeH);
71 append_flag_if_exist(ModeSTypeI);
72 append_flag_if_exist(ModeSTypeL);
73 append_flag_if_exist(ModeSTypeX);
74 append_flag_if_exist(ModeSTypeP);
75 append_flag_if_exist(ModeSTypeS);
76 append_flag_if_exist(AdsBB1);
77 append_flag_if_exist(AdsBB2);
78 append_flag_if_exist(AdsBU1);
79 append_flag_if_exist(AdsBU2);
80 append_flag_if_exist(AdsBV1);
81 append_flag_if_exist(AdsBV2);
82 append_flag_if_exist(AdsCD1);
83 append_flag_if_exist(AdsCG1);
91 Q_ASSERT_X(!equipmentString.
isEmpty(), Q_FUNC_INFO,
"Equipment string should not be empty");
92 return equipmentString;
95 QString CSsrEquipment::flagToString(CSsrEquipment::SSrEquipment flag)
112 if (flag == ModeSTypeE)
117 if (flag == ModeSTypeH)
122 if (flag == ModeSTypeI)
127 if (flag == ModeSTypeL)
132 if (flag == ModeSTypeX)
137 if (flag == ModeSTypeP)
142 if (flag == ModeSTypeS)
194 {
"N",
"A",
"C",
"E",
"H",
"I",
"L",
"X",
"P",
"S",
"B1",
"B2",
"U1",
"U2",
"V1",
"V2",
"D1",
"G1" });
CSsrEquipment()=default
Create default SSR equipment with "None" equipment enabled.
QStringList enabledOptions() const
Get all enabled SSR equipment codes of this object as a list.
SsrEquipmentOption
Surveillance equipment options.
QString convertToQString(bool i18n=false) const
Get the SSR equipment string of this object (for example "LB1")
static QStringList allEquipmentLetters()
Get all possible SSR equipment code letters.
bool contains(QChar ch, Qt::CaseSensitivity cs) const const
bool isEmpty() const const
QString & remove(QChar ch, Qt::CaseSensitivity cs)
QString join(QChar separator) const const
#define SWIFT_DEFINE_VALUEOBJECT_MIXINS(Namespace, Class)
Explicit template definition of mixins for a CValueObject subclass.