##// END OF EJS Templates
Add Catalogue methods
Add Catalogue methods

File last commit:

r761:ff170594501a
r1268:acc828493557
Show More
IDataProvider.h
81 lines | 2.4 KiB | text/x-c | CLexer
Alexandre Leroux
Creates IDataProvider interface
r122 #ifndef SCIQLOP_IDATAPROVIDER_H
#define SCIQLOP_IDATAPROVIDER_H
Alexandre Leroux
Exports core module as a shared library...
r461 #include "CoreGlobal.h"
Alexandre Leroux
Creates IDataProvider interface
r122 #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>
Change SqpRange for SqpDateTime
r512 #include <Data/SqpRange.h>
Add merge API and implement it for the DataSeries
r233
Add functionnal include missing
r434 #include <functional>
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
*/
Alexandre Leroux
Exports core module as a shared library...
r461 class SCIQLOP_CORE_EXPORT IDataProvider : public QObject {
Add merge API and implement it for the DataSeries
r233
Q_OBJECT
Alexandre Leroux
Creates IDataProvider interface
r122 public:
virtual ~IDataProvider() noexcept = default;
Alexandre Leroux
Generates and registers clone provider
r712 virtual std::shared_ptr<IDataProvider> clone() const = 0;
Alexandre Leroux
Creates IDataProvider interface
r122
Add a signal to the IDataProvider API to correspond with the network...
r387 /**
Implementation of V5 acquisition
r539 * @brief requestDataLoading provide datas for the data identified by acqIdentifier and
* parameters
Add a signal to the IDataProvider API to correspond with the network...
r387 */
Implementation of V5 acquisition
r539 virtual void requestDataLoading(QUuid acqIdentifier, const DataProviderParameters &parameters)
= 0;
Add merge API and implement it for the DataSeries
r233
Implement of the abort download process
r422 /**
Implementation of V5 acquisition
r539 * @brief requestDataAborting stop data loading of the data identified by acqIdentifier
Implement of the abort download process
r422 */
Implementation of V5 acquisition
r539 virtual void requestDataAborting(QUuid acqIdentifier) = 0;
Implement of the abort download process
r422
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
Implementation of V5 acquisition
r539 * identified by acqIdentifier
Add a signal to the IDataProvider API to correspond with the network...
r387 */
Implementation of V5 acquisition
r539 void dataProvided(QUuid acqIdentifier, std::shared_ptr<IDataSeries> dateSeriesAcquired,
const SqpRange &dataRangeAcquired);
Add a signal to the IDataProvider API to correspond with the network...
r387
Remove connection for progress from NC -> VC to NC -> Provider.
r425 /**
Implementation of automatic cancel for request that failed
r761 * @brief dataProvidedProgress notify the progression of the data identifier by acqIdentifier
*/
Implementation of V5 acquisition
r539 void dataProvidedProgress(QUuid acqIdentifier, double progress);
Remove connection for progress from NC -> VC to NC -> Provider.
r425
Implementation of automatic cancel for request that failed
r761 /**
* @brief dataProvidedFailed notify that data acquisition has failed
*/
void dataProvidedFailed(QUuid acqIdentifier);
Add a signal to the IDataProvider API to correspond with the network...
r387
/**
Implementation of V5 acquisition
r539 * @brief requestConstructed send a request for the data identified by acqIdentifier
Add a signal to the IDataProvider API to correspond with the network...
r387 * @callback is the methode call by the reply of the request when it is finished.
*/
request is now passed by shared pointer instead of const &
r751 void requestConstructed(std::shared_ptr<QNetworkRequest> request, QUuid acqIdentifier,
Add a signal to the IDataProvider API to correspond with the network...
r387 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