refs #610, VATSIM status file

* automatically load status file
* keep VATSIM data file locations
* use METAR/datafile locations from bootstrap or VATSIM status file
This commit is contained in:
Klaus Basan
2016-03-03 21:33:25 +01:00
committed by Mathew Sutcliffe
parent 06bcbe2a2f
commit 1eb65a873c
16 changed files with 429 additions and 68 deletions

View File

@@ -20,6 +20,7 @@
#include "blackmisc/aviation/airlineicaocodelist.h"
#include "blackmisc/aviation/aircrafticaocodelist.h"
#include "blackmisc/network/serverlist.h"
#include "blackmisc/network/urllist.h"
#include "blackmisc/network/voicecapabilities.h"
#include "blackmisc/network/entityflags.h"
#include "blackmisc/simulation/distributorlist.h"
@@ -31,6 +32,7 @@
namespace BlackCore
{
class CVatsimStatusFileReader;
class CVatsimBookingReader;
class CVatsimDataFileReader;
class CVatsimMetarReader;
@@ -84,6 +86,14 @@ namespace BlackCore
//! \threadsafe
BlackMisc::Network::CServerList getVatsimVoiceServers() const;
//! METAR URLs (from status file)
//! \threadsafe
BlackMisc::Network::CUrlList getVatsimMetarUrls() const;
//! Data file locations (from status file)
//! \threadsafe
BlackMisc::Network::CUrlList getVatsimDataFileUrls() const;
//! Users by callsign
//! \threadsafe
BlackMisc::Network::CUserList getUsersForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const;
@@ -283,14 +293,15 @@ namespace BlackCore
bool m_initialRead = false; //!< Initial read conducted
// for reading XML and VATSIM data files
CVatsimBookingReader *m_vatsimBookingReader = nullptr;
CVatsimDataFileReader *m_vatsimDataFileReader = nullptr;
CVatsimMetarReader *m_vatsimMetarReader = nullptr;
CIcaoDataReader *m_icaoDataReader = nullptr;
CModelDataReader *m_modelDataReader = nullptr;
CVatsimStatusFileReader *m_vatsimStatusReader = nullptr;
CVatsimBookingReader *m_vatsimBookingReader = nullptr;
CVatsimDataFileReader *m_vatsimDataFileReader = nullptr;
CVatsimMetarReader *m_vatsimMetarReader = nullptr;
CIcaoDataReader *m_icaoDataReader = nullptr;
CModelDataReader *m_modelDataReader = nullptr;
// writing objects directly into DB
CDatabaseWriter *m_databaseWriter = nullptr;
CDatabaseWriter *m_databaseWriter = nullptr;
};
} // namespace