6 #ifndef SWIFT_CORE_ICAODATAREADER_H
7 #define SWIFT_CORE_ICAODATAREADER_H
45 int getAircraftIcaoCodesCount()
const;
65 bool containsAircraftIcaoDesignator(
const QString &designator)
const;
78 int getCountriesCount()
const;
94 int getAirlineIcaoCodesCount()
const;
102 bool containsAirlineIcaoDesignator(
const QString &designator)
const;
107 getAirlineIcaoCodeForUniqueDesignatorOrDefault(
const QString &designator,
bool preferOperatingAirlines)
const;
116 getAirlineIcaoCodeForUniqueIataCodeOrDefault(
const QString &iataCode)
const;
134 int getAircraftCategoryCount()
const;
138 bool areAllDataRead()
const;
141 bool writeToJsonFiles(
const QString &dir);
145 swift::misc::network::CEntityFlags::Entity whatToRead,
146 bool overrideNewerOnly)
override;
147 bool readFromJsonFilesInBackground(
const QString &dir, swift::misc::network::CEntityFlags::Entity whatToRead,
148 bool overrideNewerOnly)
override;
151 swift::misc::network::CEntityFlags::Entity getSupportedEntities()
const override;
152 QDateTime getCacheTimestamp(swift::misc::network::CEntityFlags::Entity entity)
const override;
153 int getCacheCount(swift::misc::network::CEntityFlags::Entity entity)
const override;
154 swift::misc::network::CEntityFlags::Entity getEntitiesWithCacheCount()
const override;
155 swift::misc::network::CEntityFlags::Entity
156 getEntitiesWithCacheTimestampNewerThan(
const QDateTime &threshold)
const override;
157 void synchronizeCaches(swift::misc::network::CEntityFlags::Entity entities)
override;
158 void admitCaches(swift::misc::network::CEntityFlags::Entity entities)
override;
162 void invalidateCaches(swift::misc::network::CEntityFlags::Entity entities)
override;
169 this, &CIcaoDataReader::aircraftIcaoCacheChanged
172 this, &CIcaoDataReader::airlineIcaoCacheChanged
175 &CIcaoDataReader::countryCacheChanged };
177 this, &CIcaoDataReader::aircraftCategoryCacheChanged
179 std::atomic_bool m_syncedAircraftIcaoCache {
false };
180 std::atomic_bool m_syncedAirlineIcaoCache {
false };
181 std::atomic_bool m_syncedCountryCache {
false };
182 std::atomic_bool m_syncedCategories {
false };
185 void read(swift::misc::network::CEntityFlags::Entity entities,
190 this, &CIcaoDataReader::baseUrlCacheChanged
206 void aircraftIcaoCacheChanged();
209 void airlineIcaoCacheChanged();
212 void countryCacheChanged();
215 void aircraftCategoryCacheChanged();
218 void baseUrlCacheChanged();
Value object encapsulating a list of reader configs.
Specialized version of threaded reader for DB data.
Read ICAO data from Database.
Value object encapsulating a list of countries.
Status messages, e.g. from Core -> GUI.
Value object encapsulating a list of ICAO codes.
Value object for ICAO classification.
Value object encapsulating a list of ICAO codes.
Value object for ICAO classification.
Value object encapsulating a list of ICAO codes.
Value object encapsulating information of a callsign.
DataRetrievalModeFlag
Which data to read, requires corresponding readers.
Value object encapsulating information of a location, kind of simplified CValueObject compliant versi...
Classes interacting with the swift database (aka "datastore").
#define SWIFT_CORE_EXPORT
Export a class or function from the library.