##// END OF EJS Templates
IDataProvider.h
38 lines | 946 B | 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
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;
/**
* @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 merge API and implement it for the DataSeries
r233 virtual void requestDataLoading(const QVector<SqpDateTime> &dateTimeList) = 0;
signals:
Correction for pull request
r243 void dataProvided(std::shared_ptr<IDataSeries> dateSerie, const SqpDateTime &dateTime);
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>)
Alexandre Leroux
Makes the connection between Data source controller and Variable controller...
r169
Alexandre Leroux
Creates IDataProvider interface
r122 #endif // SCIQLOP_IDATAPROVIDER_H