##// END OF EJS Templates
Fixes the refresh of data that was not working all the time
Fixes the refresh of data that was not working all the time

File last commit:

r174:992eeb099247
r1324:c436df4b66de
Show More
VisualizationController.cpp
48 lines | 1.4 KiB | text/x-c | CppLexer
/ core / src / Visualization / VisualizationController.cpp
#include <Visualization/VisualizationController.h>
#include <Variable/Variable.h>
#include <QMutex>
#include <QThread>
#include <QDir>
#include <QStandardPaths>
Q_LOGGING_CATEGORY(LOG_VisualizationController, "VisualizationController")
class VisualizationController::VisualizationControllerPrivate {
public:
QMutex m_WorkingMutex;
};
VisualizationController::VisualizationController(QObject *parent)
: impl{spimpl::make_unique_impl<VisualizationControllerPrivate>()}
{
qCDebug(LOG_VisualizationController()) << tr("VisualizationController construction")
<< QThread::currentThread();
}
VisualizationController::~VisualizationController()
{
qCDebug(LOG_VisualizationController()) << tr("VisualizationController destruction")
<< QThread::currentThread();
this->waitForFinish();
}
void VisualizationController::initialize()
{
qCDebug(LOG_VisualizationController()) << tr("VisualizationController init")
<< QThread::currentThread();
impl->m_WorkingMutex.lock();
qCDebug(LOG_VisualizationController()) << tr("VisualizationController init END");
}
void VisualizationController::finalize()
{
impl->m_WorkingMutex.unlock();
}
void VisualizationController::waitForFinish()
{
QMutexLocker locker{&impl->m_WorkingMutex};
}