swift
Signals | Public Member Functions | Protected Member Functions | List of all members
swift::core::vatsim::CVatsimMetarReader Class Reference

Read METARs from VATSIM. More...

Inheritance diagram for swift::core::vatsim::CVatsimMetarReader:
[legend]

Signals

void metarsRead (const swift::misc::weather::CMetarList &metars)
 METARs have been read and converted to swift::misc::weather::CMetarList.
 
void dataRead (swift::misc::network::CEntityFlags::Entity entity, swift::misc::network::CEntityFlags::ReadState state, int number, const QUrl &url)
 Data have been read.
 
- Signals inherited from swift::misc::CWorkerBase
void aboutToStart ()
 Emitted when the task is about to start.
 
void finished ()
 Emitted when the task is finished. More...
 

Public Member Functions

 CVatsimMetarReader (QObject *owner)
 Constructor.
 
virtual swift::misc::weather::CMetarList getMetars () const
 Get METARs. More...
 
virtual swift::misc::weather::CMetar getMetarForAirport (const swift::misc::aviation::CAirportIcaoCode &icao) const
 Get METAR for airport. More...
 
- Public Member Functions inherited from swift::core::CThreadedReaderPeriodic
 ~CThreadedReaderPeriodic ()=default
 Destructor.
 
void startReader ()
 Starts the reader. More...
 
- Public Member Functions inherited from swift::core::CThreadedReader
 ~CThreadedReader ()=default
 Destructor.
 
 CThreadedReader (const CThreadedReader &)=delete
 Copy constructor.
 
CThreadedReaderoperator= (const CThreadedReader &)=delete
 Copy assignment.
 
 CThreadedReader (CThreadedReader &&)=delete
 Move constructor.
 
CThreadedReaderoperator= (CThreadedReader &&)=delete
 Move assignment.
 
QDateTime getUpdateTimestamp () const
 Thread safe, get update timestamp. More...
 
void setUpdateTimestamp (const QDateTime &updateTimestamp=QDateTime::currentDateTimeUtc())
 Thread safe, set update timestamp. More...
 
bool isMarkedAsFailed () const
 Is marked as read failed. More...
 
void setMarkedAsFailed (bool failed)
 Set marker for read failed. More...
 
swift::misc::network::CUrlLogList getReadLog () const
 Get the read log. More...
 
void markAsUsedInUnitTest ()
 Used in unit test. More...
 
swift::misc::network::CUrlLogList getUrlLogList () const
 Get the URL log list. More...
 
QPair< qint64, qint64 > getNetworkReplyBytes () const
 Max./current bytes.
 
- Public Member Functions inherited from swift::misc::CContinuousWorker
 CContinuousWorker (QObject *owner, const QString &name)
 Constructor. More...
 
void start (QThread::Priority priority=QThread::InheritPriority)
 Starts a thread and moves the worker into it.
 
void quit () noexcept final
 Stops the thread the next time around its event loop. The thread and the worker will then be deleted. More...
 
void quitAndWait () noexcept final
 Calls quit() and blocks until the thread is finished. More...
 
bool isEnabled () const
 Enabled (running)? More...
 
const QStringgetName ()
 Name of the worker.
 
const QObjectowner () const
 Owner of the worker.
 
- Public Member Functions inherited from swift::misc::CWorkerBase
 ~CWorkerBase ()
 Destructor.
 
 CWorkerBase (const CWorkerBase &)=delete
 Copy constructor.
 
CWorkerBaseoperator= (const CWorkerBase &)=delete
 Copy assignment.
 
 CWorkerBase (CWorkerBase &&)=delete
 Move constructor.
 
CWorkerBaseoperator= (CWorkerBase &&)=delete
 Move assignment.
 
template<typename T , typename F >
void then (T *context, F functor)
 Connects to a functor or method which will be called when the task is finished. More...
 
template<typename F >
void then (F functor)
 Connects to a functor which will be called when the task is finished. More...
 
bool isFinished () const
 Returns true if the task has finished. More...
 
template<typename F >
void doIfFinished (F functor) const
 Executes some code (in the caller's thread) if the task has finished. More...
 
template<typename F >
void doIfNotFinished (F functor) const
 Executes some code (in the caller's thread) if the task has not finished. More...
 
template<typename F1 , typename F2 >
void doIfFinishedElse (F1 ifFunctor, F2 elseFunctor) const
 Executes some code (in the caller's thread) if the task has finished and some different code if it has not finished. More...
 
void waitForFinished () noexcept
 Blocks until the task is finished. More...
 
void abandon () noexcept
 Notify the task that its result is no longer needed, so it can finish early. More...
 
void abandonAndWait () noexcept
 Convenience to call abandon() followed by waitForFinished().
 
- Public Member Functions inherited from QObject
QBindable< QStringbindableObjectName ()
 
 QObject (QObject *parent)
 
 QT_NO_CONTEXTLESS_CONNECT QT_NO_CONTEXTLESS_CONNECT
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
 Q_CLASSINFO (Name, Value)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUMS (...)
 
 Q_ENUM_NS (...)
 
 Q_FLAG (...)
 
 Q_FLAGS (...)
 
 Q_FLAG_NS (...)
 
 Q_GADGET Q_GADGET
 
 Q_GADGET_EXPORT (EXPORT_MACRO)
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_MOC_INCLUDE Q_MOC_INCLUDE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qobject_cast (QObject *object)
 
qobject_cast (const QObject *object)
 
bool blockSignals (bool block)
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
bool moveToThread (QThread *targetThread)
 
bool setProperty (const char *name, QVariant &&value)
 
bool setProperty (const char *name, const QVariant &value)
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::nanoseconds interval, Qt::TimerType timerType)
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
void installEventFilter (QObject *filterObj)
 
void killTimer (Qt::TimerId id)
 
void killTimer (int id)
 
void objectNameChanged (const QString &objectName)
 
void removeEventFilter (QObject *obj)
 
void setObjectName (QAnyStringView name)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
QList< QByteArraydynamicPropertyNames () const const
 
QList< T > findChildren (QAnyStringView name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
QObjectparent () const const
 
QString objectName () const const
 
QThreadthread () const const
 
QVariant property (const char *name) const const
 
findChild (QAnyStringView name, Qt::FindChildOptions options) const const
 
findChild (Qt::FindChildOptions options) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool inherits (const char *className) const const
 
bool isQuickItemType () const const
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
bool signalsBlocked () const const
 
virtual const QMetaObjectmetaObject () const const
 
const QObjectListchildren () const const
 
void dumpObjectInfo () const const
 
void dumpObjectTree () const const
 

Protected Member Functions

virtual void doWorkImpl ()
 This method does the actual work in the derived class.
 
- Protected Member Functions inherited from swift::core::CThreadedReaderPeriodic
 CThreadedReaderPeriodic (QObject *owner, const QString &name)
 Constructor.
 
void setInitialAndPeriodicTime (std::chrono::milliseconds initialTime, std::chrono::milliseconds periodicTime)
 Set initial and periodic times Changes only apply after the next time the timer restarts. More...
 
- Protected Member Functions inherited from swift::core::CThreadedReader
 CThreadedReader (QObject *owner, const QString &name)
 Constructor.
 
qint64 lastModifiedMsSinceEpoch (QNetworkReply *nwReply) const
 When was reply last modified, -1 if N/A.
 
void threadAssertCheck () const
 Make sure everything runs correctly in own thread.
 
bool didContentChange (const QString &content, int startPosition=-1)
 Stores new content hash and returns if content changed (based on hash value. More...
 
bool doWorkCheck () const
 Still enabled etc.? More...
 
QNetworkReplygetFromNetworkAndLog (const swift::misc::network::CUrl &url, const swift::misc::CSlot< void(QNetworkReply *)> &callback)
 Get request from network, and log with m_urlReadLog. More...
 
virtual void networkReplyProgress (int logId, qint64 current, qint64 max, const QUrl &url)
 Network request progress.
 
void logNetworkReplyReceived (QNetworkReply *reply)
 Network reply received, mark in m_urlReadLog. More...
 
- Protected Member Functions inherited from swift::misc::CContinuousWorker
virtual void initialize ()
 Called when the thread is started.
 
virtual void cleanup ()
 Called when the thread is finished.
 
virtual void beforeQuit () noexcept
 Called before quit is called. More...
 
virtual unsigned long waitTimeoutMs () const
 Wait time for quitAndWait, 0 means not waiting.
 
- Protected Member Functions inherited from swift::misc::CWorkerBase
 CWorkerBase ()
 Constructor.
 
bool isAbandoned () const
 For the task to check whether it can finish early. More...
 
bool hasStarted () const
 True if the worker has started.
 
void setStarted ()
 Mark the task as started.
 
void setFinished ()
 Mark the task as finished.
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
virtual void timerEvent (QTimerEvent *event)
 
QObjectsender () const const
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
int senderSignalIndex () const const
 

Additional Inherited Members

- Static Public Member Functions inherited from swift::core::CThreadedReader
static const QStringListgetLogCategories ()
 Log categories.
 
- Static Public Member Functions inherited from swift::misc::CWorkerBase
static const QStringListgetLogCategories ()
 Log categories.
 
static const QSet< CWorkerBase * > & allWorkers ()
 All workers currently existing.
 
- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Static Protected Member Functions inherited from swift::core::CThreadedReader
static void logInconsistentData (const swift::misc::CStatusMessage &msg, const char *funcInfo=nullptr)
 Use this to log inconsistent data. More...
 
- Protected Attributes inherited from swift::core::CThreadedReader
QReadWriteLock m_lock
 lock which can be used from the derived classes More...
 
std::atomic_int m_networkReplyProgress
 Progress percentage 0...100.
 
std::atomic_llong m_networkReplyCurrent
 current bytes
 
std::atomic_llong m_networkReplyMax
 max bytes
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Read METARs from VATSIM.

Definition at line 24 of file vatsimmetarreader.h.

Member Function Documentation

◆ getMetarForAirport()

CMetar swift::core::vatsim::CVatsimMetarReader::getMetarForAirport ( const swift::misc::aviation::CAirportIcaoCode icao) const
virtual

Get METAR for airport.

Remarks
This function is thread safe.

Definition at line 44 of file vatsimmetarreader.cpp.

◆ getMetars()

CMetarList swift::core::vatsim::CVatsimMetarReader::getMetars ( ) const
virtual

Get METARs.

Remarks
This function is thread safe.

Definition at line 38 of file vatsimmetarreader.cpp.


The documentation for this class was generated from the following files: