##// END OF EJS Templates
Fix the cosinus bug....
Fix the cosinus bug. The provider now works on the variable controller thread instead of the main thread. That means the visu is still usable during zoom operation

File last commit:

r293:64d757eeae79
r298:3a08c66e4df2
Show More
VariableCacheController.h
40 lines | 1.1 KiB | text/x-c | CLexer
/ core / include / Variable / VariableCacheController.h
#ifndef SCIQLOP_VARIABLECACHECONTROLLER_H
#define SCIQLOP_VARIABLECACHECONTROLLER_H
#include <QObject>
#include <Data/SqpDateTime.h>
#include <QLoggingCategory>
#include <Common/spimpl.h>
class Variable;
Q_DECLARE_LOGGING_CATEGORY(LOG_VariableCacheController)
/// This class aims to store in the cache all of the dateTime already requested to the variable.
class VariableCacheController : public QObject {
Q_OBJECT
public:
explicit VariableCacheController(QObject *parent = 0);
void addDateTime(std::shared_ptr<Variable> variable, const SqpDateTime &dateTime);
/// Return all of the SqpDataTime part of the dateTime whose are not in the cache
QVector<SqpDateTime> provideNotInCacheDateTimeList(std::shared_ptr<Variable> variable,
const SqpDateTime &dateTime);
QVector<SqpDateTime> dateCacheList(std::shared_ptr<Variable> variable) const noexcept;
void displayCache(std::shared_ptr<Variable> variable);
private:
class VariableCacheControllerPrivate;
spimpl::unique_impl_ptr<VariableCacheControllerPrivate> impl;
};
#endif // SCIQLOP_VARIABLECACHECONTROLLER_H