##// END OF EJS Templates
Fixes data loss in some cases of data recovery from the CosiunusProvider
Fixes data loss in some cases of data recovery from the CosiunusProvider

File last commit:

r581:5ee6983593ec
r706:6fa5f5facdaa
Show More
VariableCacheStrategy.h
40 lines | 960 B | text/x-c | CLexer
/ core / include / Variable / VariableCacheStrategy.h
#ifndef SCIQLOP_VARIABLECACHESTRATEGY_H
#define SCIQLOP_VARIABLECACHESTRATEGY_H
#include "CoreGlobal.h"
#include <QLoggingCategory>
#include <QObject>
#include <Data/SqpRange.h>
#include <QLoggingCategory>
#include <Common/spimpl.h>
#include <utility>
Q_DECLARE_LOGGING_CATEGORY(LOG_VariableCacheStrategy)
class Variable;
/**
* Possible types of zoom operation
*/
enum class CacheStrategy { FixedTolerance, TwoThreashold };
/// This class aims to hande the cache strategy.
class SCIQLOP_CORE_EXPORT VariableCacheStrategy : public QObject {
Q_OBJECT
public:
explicit VariableCacheStrategy(QObject *parent = 0);
std::pair<SqpRange, SqpRange> computeStrategyRanges(const SqpRange &vRange,
const SqpRange &rangeRequested);
private:
class VariableCacheStrategyPrivate;
spimpl::unique_impl_ptr<VariableCacheStrategyPrivate> impl;
};
#endif // SCIQLOP_VARIABLECACHESTRATEGY_H