swift
waketurbulencecategory.cpp
1 // SPDX-FileCopyrightText: Copyright (C) swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
4 #include "waketurbulencecategory.h"
5 
6 SWIFT_DEFINE_VALUEOBJECT_MIXINS(swift::misc::aviation, CWakeTurbulenceCategory)
7 
8 namespace swift::misc::aviation
9 {
11 
13  {
14  letter = letter.toUpper();
15  if (letter == 'L') { m_wtc = LIGHT; }
16  else if (letter == 'M') { m_wtc = MEDIUM; }
17  else if (letter == 'H') { m_wtc = HEAVY; }
18  else if (letter == 'J') { m_wtc = SUPER; }
19  else
20  {
21  // This includes "-" which is used in the database for aircraft with unknown wake turbulence category
22  m_wtc = UNKNOWN;
23  }
24  }
25 
27  {
28  switch (m_wtc)
29  {
30  case WakeTurbulenceCategory::LIGHT: return QStringLiteral("L");
31  case WakeTurbulenceCategory::MEDIUM: return QStringLiteral("M");
32  case WakeTurbulenceCategory::HEAVY: return QStringLiteral("H");
33  case WakeTurbulenceCategory::SUPER: return QStringLiteral("J");
34  default: [[fallthrough]];
35  case WakeTurbulenceCategory::UNKNOWN: return QStringLiteral("-");
36  }
37  }
38 } // namespace swift::misc::aviation
QString convertToQString(bool i18n=false) const
Cast as QString.
CWakeTurbulenceCategory()=default
Create default object with unknown wake turbulence category.
WakeTurbulenceCategory
ICAO wake turbulence categories.
@ UNKNOWN
required when converting from FAA equipment codes and for some database entries where the correct WTC...
#define SWIFT_DEFINE_VALUEOBJECT_MIXINS(Namespace, Class)
Explicit template definition of mixins for a CValueObject subclass.
Definition: valueobject.h:67