VisualizationController.cpp
43 lines
| 1.2 KiB
| text/x-c
|
CppLexer
r0 | #include <QDir> | |||
r69 | #include <QMutex> | |||
r0 | #include <QStandardPaths> | |||
r69 | #include <QThread> | |||
#include <Visualization/VisualizationController.h> | ||||
r0 | ||||
Q_LOGGING_CATEGORY(LOG_VisualizationController, "VisualizationController") | ||||
r69 | class VisualizationController::VisualizationControllerPrivate | |||
{ | ||||
r0 | public: | |||
r69 | QMutex m_WorkingMutex; | |||
r0 | }; | |||
r69 | VisualizationController::VisualizationController(QObject* parent) | |||
: impl{spimpl::make_unique_impl<VisualizationControllerPrivate>()} | ||||
r0 | { | |||
r69 | qCDebug(LOG_VisualizationController()) | |||
<< tr("VisualizationController construction") << QThread::currentThread(); | ||||
r0 | } | |||
VisualizationController::~VisualizationController() | ||||
{ | ||||
r69 | qCDebug(LOG_VisualizationController()) | |||
<< tr("VisualizationController destruction") << QThread::currentThread(); | ||||
this->waitForFinish(); | ||||
r0 | } | |||
void VisualizationController::initialize() | ||||
{ | ||||
r69 | qCDebug(LOG_VisualizationController()) | |||
<< tr("VisualizationController init") << QThread::currentThread(); | ||||
impl->m_WorkingMutex.lock(); | ||||
qCDebug(LOG_VisualizationController()) | ||||
<< tr("VisualizationController init END"); | ||||
r0 | } | |||
r69 | void VisualizationController::finalize() { impl->m_WorkingMutex.unlock(); } | |||
r0 | ||||
void VisualizationController::waitForFinish() | ||||
{ | ||||
r69 | QMutexLocker locker{&impl->m_WorkingMutex}; | |||
r0 | } | |||