##// END OF EJS Templates
Disables 'plot' menu when variable data have not been loaded yet
Disables 'plot' menu when variable data have not been loaded yet

File last commit:

r387:096d47e83d44
r404:40749dfba67d
Show More
IDataProvider.h
60 lines | 1.8 KiB | text/x-c | CLexer
Alexandre Leroux
Creates IDataProvider interface
r122 #ifndef SCIQLOP_IDATAPROVIDER_H
#define SCIQLOP_IDATAPROVIDER_H
#include <memory>
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169 #include <QObject>
Alexandre Leroux
Transits tokens in provider requests
r376 #include <QUuid>
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169
Alexandre Leroux
Centralization of qregistermetatype management
r308 #include <Common/MetaTypes.h>
Add merge API and implement it for the DataSeries
r233 #include <Data/SqpDateTime.h>
Alexandre Leroux
Creates IDataProvider interface
r122 class DataProviderParameters;
class IDataSeries;
Add a signal to the IDataProvider API to correspond with the network...
r387 class QNetworkReply;
class QNetworkRequest;
Alexandre Leroux
Creates IDataProvider interface
r122
/**
* @brief The IDataProvider interface aims to declare a data provider.
*
* A data provider is an entity that generates data and returns it according to various parameters
* (time interval, product to retrieve the data, etc.)
*
* @sa IDataSeries
*/
Add merge API and implement it for the DataSeries
r233 class IDataProvider : public QObject {
Q_OBJECT
Alexandre Leroux
Creates IDataProvider interface
r122 public:
virtual ~IDataProvider() noexcept = default;
Add a signal to the IDataProvider API to correspond with the network...
r387 /**
* @brief requestDataLoading provide datas for the data identified by identifier for all
* SqpDateTime of dateTimeList
*/
virtual void requestDataLoading(QUuid identifier, const QVector<SqpDateTime> &dateTimeList) = 0;
Add merge API and implement it for the DataSeries
r233
signals:
Add a signal to the IDataProvider API to correspond with the network...
r387 /**
* @brief dataProvided send dataSeries under dateTime and that corresponds of the data
* identified by identifier
*/
void dataProvided(QUuid identifier, std::shared_ptr<IDataSeries> dateSerie,
Alexandre Leroux
Transits tokens in provider requests
r376 const SqpDateTime &dateTime);
Add a signal to the IDataProvider API to correspond with the network...
r387
/**
* @brief requestConstructed send a request for the data identified by identifier
* @callback is the methode call by the reply of the request when it is finished.
*/
void requestConstructed(const QNetworkRequest &request, QUuid identifier,
std::function<void(QNetworkReply *, QUuid)> callback);
Add merge API and implement it for the DataSeries
r233 };
Alexandre Leroux
Centralization of qregistermetatype management
r308
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169 // Required for using shared_ptr in signals/slots
Alexandre Leroux
Centralization of qregistermetatype management
r308 SCIQLOP_REGISTER_META_TYPE(IDATAPROVIDER_PTR_REGISTRY, std::shared_ptr<IDataProvider>)
Add a signal to the IDataProvider API to correspond with the network...
r387 SCIQLOP_REGISTER_META_TYPE(IDATAPROVIDER_FUNCTION_REGISTRY,
std::function<void(QNetworkReply *, QUuid)>)
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169
Alexandre Leroux
Creates IDataProvider interface
r122 #endif // SCIQLOP_IDATAPROVIDER_H