VisualizationController.h
44 lines
| 1.3 KiB
| text/x-c
|
CLexer
r53 | #ifndef SCIQLOP_VISUALIZATIONCONTROLLER_H | |||
#define SCIQLOP_VISUALIZATIONCONTROLLER_H | ||||
#include <QLoggingCategory> | ||||
#include <QObject> | ||||
#include <QUuid> | ||||
#include <Common/spimpl.h> | ||||
Q_DECLARE_LOGGING_CATEGORY(LOG_VisualizationController) | ||||
class DataSourceItem; | ||||
Alexandre Leroux
|
r170 | class Variable; | ||
r53 | ||||
/** | ||||
* @brief The VisualizationController class aims to make the link between SciQlop and its plugins. | ||||
* This is the intermediate class that SciQlop has to use in the way to connect a data source. | ||||
* Please first use register method to initialize a plugin specified by its metadata name (JSON | ||||
* plugin source) then others specifics method will be able to access it. You can load a data source | ||||
* driver plugin then create a data source. | ||||
*/ | ||||
class VisualizationController : public QObject { | ||||
Q_OBJECT | ||||
public: | ||||
explicit VisualizationController(QObject *parent = 0); | ||||
virtual ~VisualizationController(); | ||||
Alexandre Leroux
|
r174 | signals: | ||
/// Signal emitted when a variable has been created in SciQlop | ||||
void variableCreated(std::shared_ptr<Variable> variable); | ||||
Alexandre Leroux
|
r170 | |||
Alexandre Leroux
|
r174 | public slots: | ||
r53 | /// Manage init/end of the controller | |||
void initialize(); | ||||
void finalize(); | ||||
private: | ||||
void waitForFinish(); | ||||
class VisualizationControllerPrivate; | ||||
spimpl::unique_impl_ptr<VisualizationControllerPrivate> impl; | ||||
}; | ||||
#endif // SCIQLOP_VISUALIZATIONCONTROLLER_H | ||||