##// END OF EJS Templates
Implementation of the cache feature : download before display needs
Implementation of the cache feature : download before display needs

File last commit:

r422:ff0aebb946e3
r433:a2e6652524d1
Show More
VariableController.h
92 lines | 2.9 KiB | text/x-c | CLexer
/ core / include / Variable / VariableController.h
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 #ifndef SCIQLOP_VARIABLECONTROLLER_H
#define SCIQLOP_VARIABLECONTROLLER_H
The mock plugin can now create data with view operation
r235 #include <Data/SqpDateTime.h>
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 #include <QLoggingCategory>
#include <QObject>
#include <Common/spimpl.h>
Alexandre Leroux
Updates VariableController::createVariable() method...
r166 class IDataProvider;
Temporal parameters of the selected variables can be updated using the...
r304 class QItemSelectionModel;
Time widget is now used with the variable createion request
r193 class TimeController;
Alexandre Leroux
Adds Variable model in the Variable controller
r113 class Variable;
Alexandre Leroux
Affects model to the Variable Widget
r152 class VariableModel;
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 Q_DECLARE_LOGGING_CATEGORY(LOG_VariableController)
/**
* @brief The VariableController class aims to handle the variables in SciQlop.
*/
class VariableController : public QObject {
Q_OBJECT
public:
explicit VariableController(QObject *parent = 0);
virtual ~VariableController();
Alexandre Leroux
Updates VariableController::createVariable() method...
r166 VariableModel *variableModel() noexcept;
Temporal parameters of the selected variables can be updated using the...
r304 QItemSelectionModel *variableSelectionModel() noexcept;
Alexandre Leroux
Updates VariableController::createVariable() method...
r166
Time widget is now used with the variable createion request
r193 void setTimeController(TimeController *timeController) noexcept;
Alexandre Leroux
Variable deletion (1)...
r329 /**
* Deletes from the controller the variable passed in parameter.
*
Alexandre Leroux
Variable deletion (2)...
r330 * Delete a variable includes:
Alexandre Leroux
Variable deletion (7)...
r336 * - the deletion of the various references to the variable in SciQlop
Alexandre Leroux
Variable deletion (3)...
r332 * - the deletion of the model variable
Alexandre Leroux
Variable deletion (2)...
r330 * - the deletion of the provider associated with the variable
Alexandre Leroux
Variable deletion (2)...
r331 * - removing the cache associated with the variable
Alexandre Leroux
Variable deletion (1)...
r329 *
* @param variable the variable to delete from the controller.
*/
void deleteVariable(std::shared_ptr<Variable> variable) noexcept;
/**
* Deletes from the controller the variables passed in parameter.
* @param variables the variables to delete from the controller.
* @sa deleteVariable()
*/
void deleteVariables(const QVector<std::shared_ptr<Variable> > &variables) noexcept;
The mock plugin can now create data with view operation
r235
Implement of the abort download process
r422 /**
* @brief abort the variable retrieve data progression
*/
void abortProgress(std::shared_ptr<Variable> variable);
Alexandre Leroux
Updates VariableController::createVariable() method...
r166 signals:
Alexandre Leroux
Variable deletion (7)...
r336 /// Signal emitted when a variable is about to be deleted from the controller
void variableAboutToBeDeleted(std::shared_ptr<Variable> variable);
Alexandre Leroux
Updates VariableController::createVariable() method...
r166
public slots:
Fix the cosinus bug....
r298 /// Request the data loading of the variable whithin dateTime
void onRequestDataLoading(std::shared_ptr<Variable> variable, const SqpDateTime &dateTime);
Alexandre Leroux
Adds Variable model in the Variable controller
r113 /**
Alexandre Leroux
Updates VariableController::createVariable() method...
r166 * Creates a new variable and adds it to the model
Alexandre Leroux
Adds Variable model in the Variable controller
r113 * @param name the name of the new variable
Alexandre Leroux
Updates variable creation to pass metadata...
r410 * @param metadata the metadata of the new variable
Alexandre Leroux
Updates VariableController::createVariable() method...
r166 * @param provider the data provider for the new variable
Alexandre Leroux
Adds Variable model in the Variable controller
r113 */
Alexandre Leroux
Updates variable creation to pass metadata...
r410 void createVariable(const QString &name, const QVariantHash &metadata,
std::shared_ptr<IDataProvider> provider) noexcept;
Alexandre Leroux
Adds Variable model in the Variable controller
r113
Temporal parameters of the selected variables can be updated using the...
r304 /// Update the temporal parameters of every selected variable to dateTime
void onDateTimeOnSelection(const SqpDateTime &dateTime);
Add implementation of progress bar on variable inspector connected to...
r401
void onVariableRetrieveDataInProgress(QUuid identifier, double progress);
Implement of the abort download process
r422 void onAbortProgressRequested(std::shared_ptr<Variable> variable);
Alexandre Leroux
Inits variable controller and adds it to the SciQlop app
r111 void initialize();
void finalize();
private:
void waitForFinish();
class VariableControllerPrivate;
spimpl::unique_impl_ptr<VariableControllerPrivate> impl;
};
#endif // SCIQLOP_VARIABLECONTROLLER_H