/** * Settings for WlsRandomPositions * $Id$ * $HeadURL$ * $Author$ * * Created by Hanna E. Rathje, SLTE, 2022-04-01 */ #include "settings.h" #include #include #include namespace WlsRandomPositions { class NGLSettingsClass : public NGL::Settings { public: NGLSettingsClass() : NGL::Settings(s_iniFile.isEmpty() ? NGL::findProjectConfigFile() : s_iniFile) {} static void setIniFile(const QString &fn) { s_iniFile = fn; } static QString s_iniFile; }; QString NGLSettingsClass::s_iniFile; Q_GLOBAL_STATIC(NGLSettingsClass, s) //----------------------------------------------------------------------------- NGL::Settings *Settings::settings() { return s(); } //----------------------------------------------------------------------------- void Settings::setIniFile(const QString &ini) { NGLSettingsClass::setIniFile(ini); } //----------------------------------------------------------------------------- QMap Settings::trainingAreas() { QSettings *settings = s()->settings(); QMap map; settings->beginGroup(QStringLiteral("TrainingAreas")); { int size_ta = settings->beginReadArray(QStringLiteral("TrainingArea")); for (int i = 0; i < size_ta; ++i) { settings->setArrayIndex(i); TrainingArea ta; ta.id = settings->value(QStringLiteral("id")).toInt(); ta.name = settings->value(QStringLiteral("name")).toString(); ta.bottomLeft = settings->value(QStringLiteral("bottomLeftMgrs")).toString(); ta.width = settings->value(QStringLiteral("width"), 1000).toInt(); ta.height = settings->value(QStringLiteral("height"), 1000).toInt(); map.insert(ta.id, ta); } settings->endArray(); } settings->endGroup(); return map; } int Settings::amountPlayers() { return s()->settings()->value(QStringLiteral("Global/amountPlayers"), 100).toInt(); } int Settings::firstEquipNo() { return s()->settings()->value(QStringLiteral("Global/firstEquipNo"), 1000).toInt(); } QString Settings::firstMacAddress() { return s()->settings()->value(QStringLiteral("Global/firstMacAddress"), QStringLiteral("01:12:23:34:45:5")).toString(); } int Settings::msecs() { return s()->settings()->value(QStringLiteral("Global/msecs"), 100).toInt(); } int Settings::jitter() { return s()->settings()->value(QStringLiteral("Global/jitter"), 00).toInt(); } int Settings::heightMin() { return s()->settings()->value(QStringLiteral("Global/altitudeMin"), 0).toInt(); } int Settings::heightMax() { return s()->settings()->value(QStringLiteral("Global/altitudeMax"), 10).toInt(); } double Settings::maxDistance() { return s()->settings()->value(QStringLiteral("Global/naxDistance"), 10).toDouble(); } QString Settings::serverName() { return s()->settings()->value(QStringLiteral("Global/serverName"), QStringLiteral("EXCTDS01")).toString(); } int Settings::serverPort() { return s()->settings()->value(QStringLiteral("Global/serverPort"), 12002).toInt(); } } // namespace WlsRandomPositions