From 87a0c75f436d74ee9cf3f2b3bc418e64c9c8853b Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Sat, 19 Mar 2016 01:37:41 +0100 Subject: [PATCH] refs #621, use getXX for setup members, no idea why I have not used our standard --- src/blackcore/application.cpp | 4 +- src/blackcore/data/globalsetup.cpp | 66 +++++++++++-------- src/blackcore/data/globalsetup.h | 34 +++++----- src/blackcore/databaseauthentication.cpp | 4 +- src/blackcore/icaodatareader.cpp | 2 +- src/blackcore/modeldatareader.cpp | 2 +- src/blackcore/vatsimbookingreader.cpp | 2 +- src/blackcore/vatsimstatusfilereader.cpp | 2 +- src/blackcore/webdataservices.cpp | 2 +- src/blackgui/components/dblogincomponent.cpp | 2 +- src/blackgui/components/logincomponent.cpp | 2 +- .../settingsnetworkserverscomponent.cpp | 2 +- src/blackgui/views/viewbase.cpp | 12 ++-- src/blackmisc/project.cpp | 4 +- src/swiftlauncher/swiftlauncher.cpp | 4 +- tests/blackcore/testreaders.cpp | 4 +- 16 files changed, 78 insertions(+), 70 deletions(-) diff --git a/src/blackcore/application.cpp b/src/blackcore/application.cpp index 083967149..8989c5233 100644 --- a/src/blackcore/application.cpp +++ b/src/blackcore/application.cpp @@ -800,7 +800,7 @@ namespace BlackCore } if (this->m_setupReader) { - return this->m_setupReader->getSetup().vatsimMetarsUrls(); + return this->m_setupReader->getSetup().getVatsimMetarsUrls(); } return CUrlList(); } @@ -814,7 +814,7 @@ namespace BlackCore } if (this->m_setupReader) { - return this->m_setupReader->getSetup().vatsimDataFileUrls(); + return this->m_setupReader->getSetup().getVatsimDataFileUrls(); } return CUrlList(); } diff --git a/src/blackcore/data/globalsetup.cpp b/src/blackcore/data/globalsetup.cpp index b55dd3f4f..633f0b960 100644 --- a/src/blackcore/data/globalsetup.cpp +++ b/src/blackcore/data/globalsetup.cpp @@ -14,6 +14,7 @@ #include using namespace BlackMisc; +using namespace BlackMisc::Json; using namespace BlackMisc::Math; using namespace BlackMisc::Network; @@ -32,24 +33,24 @@ namespace BlackCore m_newsUrls(QStringList({ "http://swift-project.org/" })) { } - CUrl CGlobalSetup::dbIcaoReaderUrl() const + CUrl CGlobalSetup::getDbIcaoReaderUrl() const { - return dbRootDirectoryUrl(); + return getDbRootDirectoryUrl(); } - CUrl CGlobalSetup::dbModelReaderUrl() const + CUrl CGlobalSetup::getDbModelReaderUrl() const { - return dbRootDirectoryUrl(); + return getDbRootDirectoryUrl(); } - CUrl CGlobalSetup::dbHomePageUrl() const + CUrl CGlobalSetup::getDbHomePageUrl() const { - return dbRootDirectoryUrl().withAppendedPath("/page/index.php"); + return getDbRootDirectoryUrl().withAppendedPath("/page/index.php"); } - CUrl CGlobalSetup::dbLoginServiceUrl() const + CUrl CGlobalSetup::getDbLoginServiceUrl() const { - return dbRootDirectoryUrl(). + return getDbRootDirectoryUrl(). withAppendedPath("/service/jsonauthenticate.php"). withSwitchedScheme("https", m_dbHttpsPort); } @@ -73,7 +74,7 @@ namespace BlackCore return this->isDevelopment() == otherSetup.isDevelopment(); } - CUrlList CGlobalSetup::bootstrapFileUrls() const + CUrlList CGlobalSetup::getBootstrapFileUrls() const { CUrlList urls(m_sharedUrls); return urls.appendPath(CGlobalSetup::versionString() + "/bootstrap/bootstrap.json"); @@ -103,19 +104,26 @@ namespace BlackCore return url.getFullUrl(); } - CUrlList CGlobalSetup::updateInfoFileUrls() const + CGlobalSetup CGlobalSetup::fromJsonFile(const QString &fileNameAndPath) + { + CGlobalSetup setup; + loadFromJsonFile(setup, fileNameAndPath); + return setup; + } + + CUrlList CGlobalSetup::getUpdateInfoFileUrls() const { const CUrlList urls(m_sharedUrls); return urls.appendPath(CGlobalSetup::versionString() + "/development/updateinfo/updateinfo.json"); } - CUrlList CGlobalSetup::swiftDbDataFileLocationUrls() const + CUrlList CGlobalSetup::getSwiftDbDataFileLocationUrls() const { const CUrlList urls(m_sharedUrls); return urls.appendPath(CGlobalSetup::versionString() + "/dbdata/"); } - CServerList CGlobalSetup::fsdTestServersPlusHardcodedServers() const + CServerList CGlobalSetup::getFsdTestServersPlusHardcodedServers() const { static const CServerList hardcoded({ CServer("swift", "swift Testserver", "vatsim-germany.org", 6809, CUser("1234567", "swift Test User", "", "123456"), true) }); CServerList testServers(m_fsdTestServers); @@ -143,46 +151,46 @@ namespace BlackCore s.append(separator); s.append("Update info URLs: "); - s.append(updateInfoFileUrls().toQString(i18n)); + s.append(getUpdateInfoFileUrls().toQString(i18n)); s.append(separator); s.append("Bootstrap URLs: "); - s.append(bootstrapFileUrls().toQString(i18n)); + s.append(getBootstrapFileUrls().toQString(i18n)); s.append(separator); s.append("News URLs: "); - s.append(swiftLatestNewsUrls().toQString(i18n)); + s.append(getSwiftLatestNewsUrls().toQString(i18n)); s.append(separator); s.append("DB root directory: "); - s.append(dbRootDirectoryUrl().toQString(i18n)); + s.append(getDbRootDirectoryUrl().toQString(i18n)); s.append(separator); s.append("ICAO DB reader: "); - s.append(dbIcaoReaderUrl().toQString(i18n)); + s.append(getDbIcaoReaderUrl().toQString(i18n)); s.append(separator); s.append("Model DB reader: "); - s.append(dbModelReaderUrl().toQString(i18n)); + s.append(getDbModelReaderUrl().toQString(i18n)); s.append(separator); s.append("DB home page: "); - s.append(dbHomePageUrl().toQString(i18n)); + s.append(getDbHomePageUrl().toQString(i18n)); s.append(separator); s.append("DB login service: "); - s.append(dbLoginServiceUrl().toQString(i18n)); + s.append(getDbLoginServiceUrl().toQString(i18n)); s.append(separator); s.append("swift DB datafile locations: "); - s.append(swiftDbDataFileLocationUrls().toQString(i18n)); + s.append(getSwiftDbDataFileLocationUrls().toQString(i18n)); s.append(separator); s.append("VATSIM bookings: "); - s.append(vatsimBookingsUrl().toQString(i18n)); + s.append(getVatsimBookingsUrl().toQString(i18n)); s.append(separator); s.append("VATSIM METARs: "); - s.append(vatsimMetarsUrls().toQString(i18n)); + s.append(getVatsimMetarsUrls().toQString(i18n)); s.append(separator); s.append("VATSIM data file: "); - s.append(vatsimDataFileUrls().toQString(i18n)); + s.append(getVatsimDataFileUrls().toQString(i18n)); s.append(separator); s.append("FSD test servers: "); - s.append(fsdTestServers().toQString(i18n)); + s.append(getFsdTestServers().toQString(i18n)); return s; } @@ -201,7 +209,7 @@ namespace BlackCore case IndexDbHttpsPort: return CVariant::fromValue(this->m_dbHttpsPort); case IndexDbLoginService: - return CVariant::fromValue(this->dbLoginServiceUrl()); + return CVariant::fromValue(this->getDbLoginServiceUrl()); case IndexVatsimStatus: return CVariant::fromValue(this->m_vatsimStatusFileUrls); case IndexVatsimData: @@ -211,11 +219,11 @@ namespace BlackCore case IndexVatsimMetars: return CVariant::fromValue(this->m_vatsimMetarsUrls); case IndexUpdateInfo: - return CVariant::fromValue(this->updateInfoFileUrls()); + return CVariant::fromValue(this->getUpdateInfoFileUrls()); case IndexBootstrap: - return CVariant::fromValue(this->bootstrapFileUrls()); + return CVariant::fromValue(this->getBootstrapFileUrls()); case IndexSwiftDbFiles: - return CVariant::fromValue(this->swiftDbDataFileLocationUrls()); + return CVariant::fromValue(this->getSwiftDbDataFileLocationUrls()); case IndexShared: return CVariant::fromValue(this->m_sharedUrls); case IndexWasLoaded: diff --git a/src/blackcore/data/globalsetup.h b/src/blackcore/data/globalsetup.h index 4ba5baf99..80fef3e96 100644 --- a/src/blackcore/data/globalsetup.h +++ b/src/blackcore/data/globalsetup.h @@ -61,10 +61,10 @@ namespace BlackCore void markAsLoaded(bool loaded) { this->m_wasLoaded = loaded; } //! Http port - int dbHttpPort() const { return m_dbHttpPort; } + int getDbHttpPort() const { return m_dbHttpPort; } //! Https port - int dbHttpsPort() const { return m_dbHttpsPort; } + int getDbHttpsPort() const { return m_dbHttpsPort; } //! Debug flag bool dbDebugFlag() const; @@ -76,49 +76,49 @@ namespace BlackCore bool hasSameType(const CGlobalSetup &otherSetup) const; //! Home page url - BlackMisc::Network::CUrl dbHomePageUrl() const; + BlackMisc::Network::CUrl getDbHomePageUrl() const; //! Login service - BlackMisc::Network::CUrl dbLoginServiceUrl() const; + BlackMisc::Network::CUrl getDbLoginServiceUrl() const; //! Root directory of DB - const BlackMisc::Network::CUrl &dbRootDirectoryUrl() const { return m_dbRootDirectoryUrl; } + const BlackMisc::Network::CUrl &getDbRootDirectoryUrl() const { return m_dbRootDirectoryUrl; } //! ICAO Reader location - BlackMisc::Network::CUrl dbIcaoReaderUrl() const; + BlackMisc::Network::CUrl getDbIcaoReaderUrl() const; //! Model Reader protocol - BlackMisc::Network::CUrl dbModelReaderUrl() const; + BlackMisc::Network::CUrl getDbModelReaderUrl() const; //! URL to read VATSIM bookings - const BlackMisc::Network::CUrl &vatsimBookingsUrl() const { return m_vatsimBookingsUrl; } + const BlackMisc::Network::CUrl &getVatsimBookingsUrl() const { return m_vatsimBookingsUrl; } //! VATSIM METAR URL - const BlackMisc::Network::CUrlList &vatsimMetarsUrls() const { return this->m_vatsimMetarsUrls; } + const BlackMisc::Network::CUrlList &getVatsimMetarsUrls() const { return this->m_vatsimMetarsUrls; } //! VATSIM status file URLs - const BlackMisc::Network::CUrlList &vatsimStatusFileUrls() const { return m_vatsimStatusFileUrls; } + const BlackMisc::Network::CUrlList &getVatsimStatusFileUrls() const { return m_vatsimStatusFileUrls; } //! VATSIM data file URLs - const BlackMisc::Network::CUrlList &vatsimDataFileUrls() const { return m_vatsimDataFileUrls; } + const BlackMisc::Network::CUrlList &getVatsimDataFileUrls() const { return m_vatsimDataFileUrls; } //! Bootstrap URLs (where the data for the setup itself can be downloaded) - BlackMisc::Network::CUrlList bootstrapFileUrls() const; + BlackMisc::Network::CUrlList getBootstrapFileUrls() const; //! Version and download locations - BlackMisc::Network::CUrlList updateInfoFileUrls() const; + BlackMisc::Network::CUrlList getUpdateInfoFileUrls() const; //! Alternative locations of swift DB data files - BlackMisc::Network::CUrlList swiftDbDataFileLocationUrls() const; + BlackMisc::Network::CUrlList getSwiftDbDataFileLocationUrls() const; //! Locations of swift DB news - const BlackMisc::Network::CUrlList &swiftLatestNewsUrls() const { return m_newsUrls; } + const BlackMisc::Network::CUrlList &getSwiftLatestNewsUrls() const { return m_newsUrls; } //! FSD test servers - const BlackMisc::Network::CServerList &fsdTestServers() const { return m_fsdTestServers; } + const BlackMisc::Network::CServerList &getFsdTestServers() const { return m_fsdTestServers; } //! FSD test servers plus hardcoded - BlackMisc::Network::CServerList fsdTestServersPlusHardcodedServers() const; + BlackMisc::Network::CServerList getFsdTestServersPlusHardcodedServers() const; //! Productive settings? bool isDevelopment() const { return m_development; } diff --git a/src/blackcore/databaseauthentication.cpp b/src/blackcore/databaseauthentication.cpp index 5d5e17756..8b17f505b 100644 --- a/src/blackcore/databaseauthentication.cpp +++ b/src/blackcore/databaseauthentication.cpp @@ -51,7 +51,7 @@ namespace BlackCore if (pw.isEmpty()) { msgs.push_back(CStatusMessage(cats, CStatusMessage::SeverityError, "No password")); } if (!msgs.isEmpty()) { return msgs; } - const CUrl url(sApp->getGlobalSetup().dbLoginServiceUrl()); + const CUrl url(sApp->getGlobalSetup().getDbLoginServiceUrl()); QString msg; if (!CNetworkUtils::canConnect(url, msg)) { @@ -74,7 +74,7 @@ namespace BlackCore void CDatabaseAuthenticationService::logoff() { - CUrl url(sApp->getGlobalSetup().dbLoginServiceUrl()); + CUrl url(sApp->getGlobalSetup().getDbLoginServiceUrl()); url.setQuery("logoff=true"); QNetworkRequest request(CNetworkUtils::getNetworkRequest(url)); sApp->getFromNetwork(request, { this, &CDatabaseAuthenticationService::ps_parseServerResponse }); diff --git a/src/blackcore/icaodatareader.cpp b/src/blackcore/icaodatareader.cpp index 74ba95874..c7601d58a 100644 --- a/src/blackcore/icaodatareader.cpp +++ b/src/blackcore/icaodatareader.cpp @@ -177,7 +177,7 @@ namespace BlackCore CUrl CIcaoDataReader::getBaseUrl() const { - const CUrl baseUrl(sApp->getGlobalSetup().dbIcaoReaderUrl()); + const CUrl baseUrl(sApp->getGlobalSetup().getDbIcaoReaderUrl()); return baseUrl; } diff --git a/src/blackcore/modeldatareader.cpp b/src/blackcore/modeldatareader.cpp index 1d9f95db5..da277c299 100644 --- a/src/blackcore/modeldatareader.cpp +++ b/src/blackcore/modeldatareader.cpp @@ -418,7 +418,7 @@ namespace BlackCore CUrl CModelDataReader::getBaseUrl() const { - const CUrl baseUrl(sApp->getGlobalSetup().dbModelReaderUrl()); + const CUrl baseUrl(sApp->getGlobalSetup().getDbModelReaderUrl()); return baseUrl; } diff --git a/src/blackcore/vatsimbookingreader.cpp b/src/blackcore/vatsimbookingreader.cpp index 72e8e388a..a7200bf52 100644 --- a/src/blackcore/vatsimbookingreader.cpp +++ b/src/blackcore/vatsimbookingreader.cpp @@ -45,7 +45,7 @@ namespace BlackCore { this->threadAssertCheck(); Q_ASSERT_X(sApp, Q_FUNC_INFO, "No application"); - const QUrl url(sApp->getGlobalSetup().vatsimBookingsUrl()); + const QUrl url(sApp->getGlobalSetup().getVatsimBookingsUrl()); if (url.isEmpty()) { return; } sApp->getFromNetwork(url, { this, &CVatsimBookingReader::ps_parseBookings}); diff --git a/src/blackcore/vatsimstatusfilereader.cpp b/src/blackcore/vatsimstatusfilereader.cpp index ca4897de7..8877f4b90 100644 --- a/src/blackcore/vatsimstatusfilereader.cpp +++ b/src/blackcore/vatsimstatusfilereader.cpp @@ -55,7 +55,7 @@ namespace BlackCore this->threadAssertCheck(); Q_ASSERT_X(sApp, Q_FUNC_INFO, "Missing application"); - CFailoverUrlList urls(sApp->getGlobalSetup().vatsimStatusFileUrls()); + CFailoverUrlList urls(sApp->getGlobalSetup().getVatsimStatusFileUrls()); const CUrl url(urls.obtainNextWorkingUrl(true)); // random working URL if (url.isEmpty()) { return; } sApp->getFromNetwork(url, { this, &CVatsimStatusFileReader::ps_parseVatsimFile}); diff --git a/src/blackcore/webdataservices.cpp b/src/blackcore/webdataservices.cpp index bf845c84b..ef8ae83a0 100644 --- a/src/blackcore/webdataservices.cpp +++ b/src/blackcore/webdataservices.cpp @@ -489,7 +489,7 @@ namespace BlackCore void CWebDataServices::initWriters() { this->m_databaseWriter = new CDatabaseWriter( - sApp->getGlobalSetup().dbRootDirectoryUrl(), + sApp->getGlobalSetup().getDbRootDirectoryUrl(), this); } diff --git a/src/blackgui/components/dblogincomponent.cpp b/src/blackgui/components/dblogincomponent.cpp index dfe4990ff..ed8446ef2 100644 --- a/src/blackgui/components/dblogincomponent.cpp +++ b/src/blackgui/components/dblogincomponent.cpp @@ -29,7 +29,7 @@ namespace BlackGui { ui->setupUi(this); this->setModeLogin(true); - CUrl url(sGui->getGlobalSetup().dbHomePageUrl()); + CUrl url(sGui->getGlobalSetup().getDbHomePageUrl()); ui->lbl_SwiftDB->setText("swift DB@" + url.getHost() + ""); ui->lbl_SwiftDB->setTextFormat(Qt::RichText); ui->lbl_SwiftDB->setTextInteractionFlags(Qt::TextBrowserInteraction); diff --git a/src/blackgui/components/logincomponent.cpp b/src/blackgui/components/logincomponent.cpp index ed4917e78..d3c69b267 100644 --- a/src/blackgui/components/logincomponent.cpp +++ b/src/blackgui/components/logincomponent.cpp @@ -108,7 +108,7 @@ namespace BlackGui // add a testserver when no servers can be loaded if (otherServers.isEmpty() && (sGui->isRunningInDeveloperEnvironment() || CProject::isBetaTest())) { - otherServers.push_back(sGui->getGlobalSetup().fsdTestServersPlusHardcodedServers()); + otherServers.push_back(sGui->getGlobalSetup().getFsdTestServersPlusHardcodedServers()); CLogMessage(this).info("Added servers for testing"); } this->ui->cbp_OtherServers->setServers(otherServers); diff --git a/src/blackgui/components/settingsnetworkserverscomponent.cpp b/src/blackgui/components/settingsnetworkserverscomponent.cpp index ab0dbe55d..fc64cae38 100644 --- a/src/blackgui/components/settingsnetworkserverscomponent.cpp +++ b/src/blackgui/components/settingsnetworkserverscomponent.cpp @@ -55,7 +55,7 @@ namespace BlackGui // this is debug/bootstrap feature we can continue to test when something goes wrong if (serverList.isEmpty() && (CProject::isBetaTest() || sGui->isRunningInDeveloperEnvironment())) { - serverList.push_back(sGui->getGlobalSetup().fsdTestServersPlusHardcodedServers()); + serverList.push_back(sGui->getGlobalSetup().getFsdTestServersPlusHardcodedServers()); this->ui->tvp_Servers->updateContainer(serverList); } } diff --git a/src/blackgui/views/viewbase.cpp b/src/blackgui/views/viewbase.cpp index f2fb2de84..a2ed0c0ed 100644 --- a/src/blackgui/views/viewbase.cpp +++ b/src/blackgui/views/viewbase.cpp @@ -942,9 +942,9 @@ namespace BlackGui CStatusMessage CViewBase::ps_loadJson() { static const CLogCategoryList cats(CLogCategoryList(this).join({ CLogCategory::validation()})); - QString fileName = QFileDialog::getOpenFileName(nullptr, - tr("Load data file"), getDefaultFilename(), - tr("swift (*.json *.txt)")); + const QString fileName = QFileDialog::getOpenFileName(nullptr, + tr("Load data file"), getDefaultFilename(), + tr("swift (*.json *.txt)")); if (fileName.isEmpty()) { return CStatusMessage(cats, CStatusMessage::SeverityDebug, "Load canceled"); } QString json(CFileUtils::readFileToString(fileName)); if (json.isEmpty()) @@ -961,9 +961,9 @@ namespace BlackGui CStatusMessage CViewBase::ps_saveJson() const { static const CLogCategoryList cats(CLogCategoryList(this).join({ CLogCategory::validation()})); - QString fileName = QFileDialog::getSaveFileName(nullptr, - tr("Save data file"), getDefaultFilename(), - tr("swift (*.json *.txt)")); + const QString fileName = QFileDialog::getSaveFileName(nullptr, + tr("Save data file"), getDefaultFilename(), + tr("swift (*.json *.txt)")); if (fileName.isEmpty()) { return CStatusMessage(cats, CStatusMessage::SeverityDebug, "Save canceled"); } const QString json(this->toJsonString()); bool ok = CFileUtils::writeStringToFileInBackground(json, fileName); diff --git a/src/blackmisc/project.cpp b/src/blackmisc/project.cpp index ad37b346b..088bcf330 100644 --- a/src/blackmisc/project.cpp +++ b/src/blackmisc/project.cpp @@ -307,7 +307,7 @@ namespace BlackMisc QString getSwiftStaticDbFilesDirImpl() { - QString d(CProject::getSwiftResourceDir()); + const QString d(CProject::getSwiftResourceDir()); if (d.isEmpty()) { return ""; } QDir dir(CFileUtils::appendFilePaths(d, "shared/dbdata")); Q_ASSERT_X(dir.exists(), Q_FUNC_INFO, "missing dir"); @@ -322,7 +322,7 @@ namespace BlackMisc QString getImagesDirImpl() { - QString d(CProject::getSwiftResourceDir()); + const QString d(CProject::getSwiftResourceDir()); QDir dir(CFileUtils::appendFilePaths(d, "data/images")); Q_ASSERT_X(dir.exists(), Q_FUNC_INFO, "missing dir"); return dir.absolutePath(); diff --git a/src/swiftlauncher/swiftlauncher.cpp b/src/swiftlauncher/swiftlauncher.cpp index 51d056655..8a1fa8b25 100644 --- a/src/swiftlauncher/swiftlauncher.cpp +++ b/src/swiftlauncher/swiftlauncher.cpp @@ -146,7 +146,7 @@ void CSwiftLauncher::initStyleSheet() void CSwiftLauncher::loadLatestNews() { - CFailoverUrlList newsUrls(sGui->getGlobalSetup().swiftLatestNewsUrls()); + CFailoverUrlList newsUrls(sGui->getGlobalSetup().getSwiftLatestNewsUrls()); const CUrl newsUrl(newsUrls.obtainNextWorkingUrl()); if (newsUrl.isEmpty()) { return; } sGui->getFromNetwork(newsUrl, { this, &CSwiftLauncher::ps_displayLatestNews}); @@ -346,7 +346,7 @@ void CSwiftLauncher::ps_startButtonPressed() } else if (sender == this->ui->tb_Database) { - const CUrl homePage(sApp->getGlobalSetup().dbHomePageUrl()); + const CUrl homePage(sApp->getGlobalSetup().getDbHomePageUrl()); QDesktopServices::openUrl(homePage); } } diff --git a/tests/blackcore/testreaders.cpp b/tests/blackcore/testreaders.cpp index 781446d89..5b6af29e2 100644 --- a/tests/blackcore/testreaders.cpp +++ b/tests/blackcore/testreaders.cpp @@ -40,7 +40,7 @@ namespace BlackCoreTest void CTestReaders::readIcaoData() { - const CUrl url(sApp->getGlobalSetup().dbIcaoReaderUrl()); + const CUrl url(sApp->getGlobalSetup().getDbIcaoReaderUrl()); if (!this->pingServer(url)) { return; } m_icaoReader->start(); m_icaoReader->readInBackgroundThread(CEntityFlags::AllIcaoEntities, QDateTime()); @@ -69,7 +69,7 @@ namespace BlackCoreTest void CTestReaders::readModelData() { - const CUrl url(sApp->getGlobalSetup().dbModelReaderUrl()); + const CUrl url(sApp->getGlobalSetup().getDbModelReaderUrl()); if (!this->pingServer(url)) { return; } m_modelReader->start(); m_modelReader->readInBackgroundThread(CEntityFlags::ModelEntity, QDateTime());