Use C++17 nested namespaces

This commit is contained in:
Lars Toenning
2022-04-29 22:31:49 +02:00
parent d1f41daba2
commit f5d3d59a86
6 changed files with 154 additions and 173 deletions

View File

@@ -23,75 +23,71 @@
class QStringList;
BLACK_DECLARE_VALUEOBJECT_MIXINS(BlackMisc::Aviation, CSelcal)
namespace BlackMisc
namespace BlackMisc::PhysicalQuantities { class CFrequency; }
namespace BlackMisc::Aviation
{
namespace PhysicalQuantities { class CFrequency; }
namespace Aviation
/*!
* Value object for SELCAL.
* \see http://en.wikipedia.org/wiki/SELCAL
* \see http://www.asri.aero/our-services/selcal/ User Guide
*/
class BLACKMISC_EXPORT CSelcal : public CValueObject<CSelcal>
{
/*!
* Value object for SELCAL.
* \see http://en.wikipedia.org/wiki/SELCAL
* \see http://www.asri.aero/our-services/selcal/ User Guide
*/
class BLACKMISC_EXPORT CSelcal : public CValueObject<CSelcal>
{
public:
//! Default constructor.
CSelcal() = default;
public:
//! Default constructor.
CSelcal() = default;
//! Constructor.
CSelcal(const QString &code) : m_code(unifyCode(code)) {}
//! Constructor.
CSelcal(const QString &code) : m_code(unifyCode(code)) {}
//! Constructor needed to disambiguate implicit conversion from string literal.
CSelcal(const char *code) : m_code(unifyCode(code)) {}
//! Constructor needed to disambiguate implicit conversion from string literal.
CSelcal(const char *code) : m_code(unifyCode(code)) {}
//! Is valid?
bool isValid() const { return isValidCode(m_code); }
//! Is valid?
bool isValid() const { return isValidCode(m_code); }
//! Get SELCAL code
const QString &getCode() const { return m_code; }
//! Get SELCAL code
const QString &getCode() const { return m_code; }
//! List of 4 frequencies, if list is empty SELCAL code is not valid
//! \return either 4 frequencies, or empty list
QList<PhysicalQuantities::CFrequency> getFrequencies() const;
//! List of 4 frequencies, if list is empty SELCAL code is not valid
//! \return either 4 frequencies, or empty list
QList<PhysicalQuantities::CFrequency> getFrequencies() const;
//! Equals given string
bool equalsString(const QString &code) const;
//! Equals given string
bool equalsString(const QString &code) const;
//! \copydoc BlackMisc::Mixin::String::toQString
QString convertToQString(bool i18n = false) const;
//! \copydoc BlackMisc::Mixin::String::toQString
QString convertToQString(bool i18n = false) const;
//! Valid SELCAL characters
static const QString &validCharacters();
//! Valid SELCAL characters
static const QString &validCharacters();
//! Is given character a valid SELCAL characer?
static bool isValidCharacter(QChar c);
//! Is given character a valid SELCAL characer?
static bool isValidCharacter(QChar c);
//! Valid SELCAL code?
static bool isValidCode(const QString &code);
//! Valid SELCAL code?
static bool isValidCode(const QString &code);
//! All valid code pairs: AB, AC, AD ...
static const QStringList &codePairs();
//! All valid code pairs: AB, AC, AD ...
static const QStringList &codePairs();
//! Unify SELCAL code by removing illegal characters
static QString unifyCode(const QString &selcalCandidate);
//! Unify SELCAL code by removing illegal characters
static QString unifyCode(const QString &selcalCandidate);
private:
//! Audio frequency for character
static const PhysicalQuantities::CFrequency &audioFrequencyEquivalent(QChar c);
private:
//! Audio frequency for character
static const PhysicalQuantities::CFrequency &audioFrequencyEquivalent(QChar c);
//! All audio frequencies
static const QList<PhysicalQuantities::CFrequency> &audioFrequencyEquivalents();
//! All audio frequencies
static const QList<PhysicalQuantities::CFrequency> &audioFrequencyEquivalents();
QString m_code;
QString m_code;
BLACK_METACLASS(
CSelcal,
BLACK_METAMEMBER(code)
);
};
} // namespace
BLACK_METACLASS(
CSelcal,
BLACK_METAMEMBER(code)
);
};
} // namespace
Q_DECLARE_METATYPE(BlackMisc::Aviation::CSelcal)

View File

@@ -9,7 +9,6 @@
#include "blackmisc/db/registermetadatadb.h"
#include "blackmisc/variant.h"
namespace BlackMisc
// DB headers
#include "blackmisc/db/dbinfolist.h"
#include "blackmisc/db/dbinfo.h"
@@ -20,20 +19,18 @@ namespace BlackMisc
#include "blackmisc/db/artifactlist.h"
#include "blackmisc/db/updateinfo.h"
namespace BlackMisc::Db
{
namespace Db
void registerMetadata()
{
void registerMetadata()
{
CDbFlags::registerMetadata();
CDbInfo::registerMetadata();
CDbInfoList::registerMetadata();
CArtifact::registerMetadata();
CArtifactList::registerMetadata();
CDistribution::registerMetadata();
CDistributionList::registerMetadata();
CUpdateInfo::registerMetadata();
}
CDbFlags::registerMetadata();
CDbInfo::registerMetadata();
CDbInfoList::registerMetadata();
CArtifact::registerMetadata();
CArtifactList::registerMetadata();
CDistribution::registerMetadata();
CDistributionList::registerMetadata();
CUpdateInfo::registerMetadata();
}
} // ns

View File

@@ -8,7 +8,6 @@
#include "blackmisc/geo/registermetadatageo.h"
namespace BlackMisc
// Geo headers
#include "blackmisc/geo/latitude.h"
#include "blackmisc/geo/longitude.h"
@@ -16,17 +15,15 @@ namespace BlackMisc
#include "blackmisc/geo/coordinategeodeticlist.h"
#include "blackmisc/geo/elevationplane.h"
namespace BlackMisc::Geo
{
namespace Geo
void registerMetadata()
{
void registerMetadata()
{
CCoordinateGeodetic::registerMetadata();
CCoordinateGeodeticList::registerMetadata();
CLatitude::registerMetadata();
CLongitude::registerMetadata();
CElevationPlane::registerMetadata();
}
CCoordinateGeodetic::registerMetadata();
CCoordinateGeodeticList::registerMetadata();
CLatitude::registerMetadata();
CLongitude::registerMetadata();
CElevationPlane::registerMetadata();
}
} // ns

View File

@@ -16,22 +16,19 @@
#include <QDBusMetaType>
namespace BlackMisc
namespace BlackMisc::Input
{
namespace Input
void registerMetadata()
{
void registerMetadata()
{
CActionHotkey::registerMetadata();
CActionHotkeyList::registerMetadata();
CHotkeyCombination::registerMetadata();
CJoystickButton::registerMetadata();
CJoystickButtonList::registerMetadata();
CKeyboardKey::registerMetadata();
CKeyboardKeyList::registerMetadata();
qDBusRegisterMetaType<KeyCode>();
qRegisterMetaTypeStreamOperators<KeyCode>();
}
CActionHotkey::registerMetadata();
CActionHotkeyList::registerMetadata();
CHotkeyCombination::registerMetadata();
CJoystickButton::registerMetadata();
CJoystickButtonList::registerMetadata();
CKeyboardKey::registerMetadata();
CKeyboardKeyList::registerMetadata();
qDBusRegisterMetaType<KeyCode>();
qRegisterMetaTypeStreamOperators<KeyCode>();
}
} // ns

View File

@@ -40,74 +40,71 @@ using namespace BlackMisc::Simulation::Fsx;
using namespace BlackMisc::Simulation::FsCommon;
using namespace BlackMisc::Simulation::Settings;
namespace BlackMisc
namespace BlackMisc::Simulation
{
namespace Simulation
void registerMetadata()
{
void registerMetadata()
{
CAircraftCfgEntries::registerMetadata();
CAircraftCfgEntriesList::registerMetadata();
CAircraftModel::registerMetadata();
CAircraftModelList::registerMetadata();
CAirspaceAircraftSnapshot::registerMetadata();
CDistributor::registerMetadata();
CDistributorList::registerMetadata();
CDistributorListPreferences::registerMetadata();
CInterpolationAndRenderingSetupPerCallsign::registerMetadata();
CInterpolationAndRenderingSetupGlobal::registerMetadata();
CInterpolationSetupList::registerMetadata();
CMatchingStatisticsEntry::registerMetadata();
CMatchingStatistics::registerMetadata();
CModelSettings::registerMetadata();
CSimConnectUtilities::registerMetadata();
CSimulatedAircraft::registerMetadata();
CSimulatedAircraftList::registerMetadata();
CSimulatorInfo::registerMetadata();
CSimulatorInfoList::registerMetadata();
CSimulatorInternals::registerMetadata();
CSimulatorMessagesSettings::registerMetadata();
CSimulatorPluginInfo::registerMetadata();
CSimulatorPluginInfoList::registerMetadata();
CSimulatorSettings::registerMetadata();
CFsxP3DSettings::registerMetadata();
CSwiftPluginSettings::registerMetadata();
CVPilotModelRule::registerMetadata();
CVPilotModelRuleSet::registerMetadata();
CAircraftMatcherSetup::registerMetadata();
CXSwiftBusSettings::registerMetadata();
CAircraftCfgEntries::registerMetadata();
CAircraftCfgEntriesList::registerMetadata();
CAircraftModel::registerMetadata();
CAircraftModelList::registerMetadata();
CAirspaceAircraftSnapshot::registerMetadata();
CDistributor::registerMetadata();
CDistributorList::registerMetadata();
CDistributorListPreferences::registerMetadata();
CInterpolationAndRenderingSetupPerCallsign::registerMetadata();
CInterpolationAndRenderingSetupGlobal::registerMetadata();
CInterpolationSetupList::registerMetadata();
CMatchingStatisticsEntry::registerMetadata();
CMatchingStatistics::registerMetadata();
CModelSettings::registerMetadata();
CSimConnectUtilities::registerMetadata();
CSimulatedAircraft::registerMetadata();
CSimulatedAircraftList::registerMetadata();
CSimulatorInfo::registerMetadata();
CSimulatorInfoList::registerMetadata();
CSimulatorInternals::registerMetadata();
CSimulatorMessagesSettings::registerMetadata();
CSimulatorPluginInfo::registerMetadata();
CSimulatorPluginInfoList::registerMetadata();
CSimulatorSettings::registerMetadata();
CFsxP3DSettings::registerMetadata();
CSwiftPluginSettings::registerMetadata();
CVPilotModelRule::registerMetadata();
CVPilotModelRuleSet::registerMetadata();
CAircraftMatcherSetup::registerMetadata();
CXSwiftBusSettings::registerMetadata();
qRegisterMetaType<CSimulatorSettings::CGSource>();
qRegisterMetaType<CAircraftMatcherSetup::MatchingAlgorithm>();
qRegisterMetaType<CAircraftMatcherSetup::MatchingMode>();
qRegisterMetaType<CAircraftMatcherSetup::MatchingModeFlag>();
qRegisterMetaType<CAircraftMatcherSetup::PickSimilarStrategy>();
qRegisterMetaType<MatchingLog>();
qRegisterMetaType<MatchingLogFlag>();
qRegisterMetaType<ReverseLookupLoggingFlag>();
qRegisterMetaType<ReverseLookupLogging>();
qRegisterMetaType<CSimulatorSettings::CGSource>();
qRegisterMetaType<CAircraftMatcherSetup::MatchingAlgorithm>();
qRegisterMetaType<CAircraftMatcherSetup::MatchingMode>();
qRegisterMetaType<CAircraftMatcherSetup::MatchingModeFlag>();
qRegisterMetaType<CAircraftMatcherSetup::PickSimilarStrategy>();
qRegisterMetaType<MatchingLog>();
qRegisterMetaType<MatchingLogFlag>();
qRegisterMetaType<ReverseLookupLoggingFlag>();
qRegisterMetaType<ReverseLookupLogging>();
// the ones generate with Q_DECLARE_FLAGS and no streamin operator fail here
qDBusRegisterMetaType<CSimulatorSettings::CGSource>();
qDBusRegisterMetaType<CInterpolationAndRenderingSetupBase::InterpolatorMode>();
qDBusRegisterMetaType<CAircraftMatcherSetup::MatchingAlgorithm>();
qDBusRegisterMetaType<CAircraftMatcherSetup::MatchingModeFlag>();
qDBusRegisterMetaType<CAircraftMatcherSetup::PickSimilarStrategy>();
qDBusRegisterMetaType<MatchingLogFlag>();
qDBusRegisterMetaType<MatchingLog>();
qDBusRegisterMetaType<ReverseLookupLoggingFlag>();
qDBusRegisterMetaType<ReverseLookupLogging>();
// the ones generate with Q_DECLARE_FLAGS and no streamin operator fail here
qDBusRegisterMetaType<CSimulatorSettings::CGSource>();
qDBusRegisterMetaType<CInterpolationAndRenderingSetupBase::InterpolatorMode>();
qDBusRegisterMetaType<CAircraftMatcherSetup::MatchingAlgorithm>();
qDBusRegisterMetaType<CAircraftMatcherSetup::MatchingModeFlag>();
qDBusRegisterMetaType<CAircraftMatcherSetup::PickSimilarStrategy>();
qDBusRegisterMetaType<MatchingLogFlag>();
qDBusRegisterMetaType<MatchingLog>();
qDBusRegisterMetaType<ReverseLookupLoggingFlag>();
qDBusRegisterMetaType<ReverseLookupLogging>();
qRegisterMetaTypeStreamOperators<CSimulatorSettings::CGSource>();
qRegisterMetaTypeStreamOperators<CInterpolationAndRenderingSetupBase::InterpolatorMode>();
qRegisterMetaTypeStreamOperators<CAircraftMatcherSetup::MatchingAlgorithm>();
qRegisterMetaTypeStreamOperators<CAircraftMatcherSetup::MatchingModeFlag>();
qRegisterMetaTypeStreamOperators<MatchingLogFlag>();
qRegisterMetaTypeStreamOperators<MatchingLog>();
qRegisterMetaTypeStreamOperators<CAircraftMatcherSetup::PickSimilarStrategy>();
qRegisterMetaTypeStreamOperators<ReverseLookupLoggingFlag>();
qRegisterMetaTypeStreamOperators<ReverseLookupLogging>();
}
qRegisterMetaTypeStreamOperators<CSimulatorSettings::CGSource>();
qRegisterMetaTypeStreamOperators<CInterpolationAndRenderingSetupBase::InterpolatorMode>();
qRegisterMetaTypeStreamOperators<CAircraftMatcherSetup::MatchingAlgorithm>();
qRegisterMetaTypeStreamOperators<CAircraftMatcherSetup::MatchingModeFlag>();
qRegisterMetaTypeStreamOperators<MatchingLogFlag>();
qRegisterMetaTypeStreamOperators<MatchingLog>();
qRegisterMetaTypeStreamOperators<CAircraftMatcherSetup::PickSimilarStrategy>();
qRegisterMetaTypeStreamOperators<ReverseLookupLoggingFlag>();
qRegisterMetaTypeStreamOperators<ReverseLookupLogging>();
}
} // ns

View File

@@ -10,7 +10,6 @@
#include "blackmisc/valueobject.h"
#include "blackmisc/variant.h"
namespace BlackMisc
// Weather headers
#include "blackmisc/weather/cloudlayer.h"
#include "blackmisc/weather/cloudlayerlist.h"
@@ -30,29 +29,27 @@ namespace BlackMisc
#include "blackmisc/weather/windlayer.h"
#include "blackmisc/weather/windlayerlist.h"
namespace BlackMisc::Weather
{
namespace Weather
void registerMetadata()
{
void registerMetadata()
{
CCloudLayer::registerMetadata();
CCloudLayerList::registerMetadata();
CGridPoint::registerMetadata();
CMetar::registerMetadata();
CMetarList::registerMetadata();
CPresentWeather::registerMetadata();
CPresentWeatherList::registerMetadata();
CTemperatureLayer::registerMetadata();
CTemperatureLayerList::registerMetadata();
CVisibilityLayer::registerMetadata();
CVisibilityLayerList::registerMetadata();
CWeatherDataPluginInfo::registerMetadata();
CWeatherDataPluginInfoList::registerMetadata();
CWeatherGrid::registerMetadata();
CWeatherScenario::registerMetadata();
CWindLayer::registerMetadata();
CWindLayerList::registerMetadata();
}
CCloudLayer::registerMetadata();
CCloudLayerList::registerMetadata();
CGridPoint::registerMetadata();
CMetar::registerMetadata();
CMetarList::registerMetadata();
CPresentWeather::registerMetadata();
CPresentWeatherList::registerMetadata();
CTemperatureLayer::registerMetadata();
CTemperatureLayerList::registerMetadata();
CVisibilityLayer::registerMetadata();
CVisibilityLayerList::registerMetadata();
CWeatherDataPluginInfo::registerMetadata();
CWeatherDataPluginInfoList::registerMetadata();
CWeatherGrid::registerMetadata();
CWeatherScenario::registerMetadata();
CWindLayer::registerMetadata();
CWindLayerList::registerMetadata();
}
} // ns