#pragma once #include "PrtCnvApplication.hpp" #include namespace NGL { class Settings; } namespace PrtCnv { class PrtCnvThread; class PrtCnvThreadStarter : public QThread { Q_OBJECT protected: PrtCnvThread *m_Thread; PrtCnvApplication *m_Application; PrtCnvApplication::E_ThreadId m_Id; NGL::Settings *m_settings; NGL::INGLLogger &m_logger; public: PrtCnvThreadStarter(const PrtCnvApplication::E_ThreadId a_id, const QString &settingsFile, PrtCnvApplication *a_mainApp); ~PrtCnvThreadStarter(); PrtCnvThread *getThread() const { return m_Thread; } PrtCnvApplication *getMainApp() const { return m_Application; } PrtCnvThread *getOtherThread(PrtCnvApplication::E_ThreadId a_threadId) const; protected: void run() override; }; }