##// END OF EJS Templates
Widget of the tab widget are now of type VisualizationTabWidget...
Widget of the tab widget are now of type VisualizationTabWidget Add addTabView and removeTabView lambda method connecter to their correspondant button in the VisuaizationWidget

File last commit:

r37:20b8bea56acf
r88:a08c6215b1ad
Show More
DataSourceController.h
61 lines | 2.2 KiB | text/x-c | CLexer
/ core / include / DataSource / DataSourceController.h
Initialisation de l'application multithread avec le spimpl....
r21 #ifndef SCIQLOP_DATASOURCECONTROLLER_H
#define SCIQLOP_DATASOURCECONTROLLER_H
#include <QLoggingCategory>
#include <QObject>
Alexandre Leroux
Enables the registration of a data source in the controller
r36 #include <QUuid>
Initialisation de l'application multithread avec le spimpl....
r21
#include <Common/spimpl.h>
Q_DECLARE_LOGGING_CATEGORY(LOG_DataSourceController)
Alexandre Leroux
Implements the method for setting data source structure
r37 class DataSourceItem;
Initialisation de l'application multithread avec le spimpl....
r21 /**
Alexandre Leroux
Enables the registration of a data source in the controller
r36 * @brief The DataSourceController 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.
Initialisation de l'application multithread avec le spimpl....
r21 */
class DataSourceController : public QObject {
Q_OBJECT
public:
explicit DataSourceController(QObject *parent = 0);
virtual ~DataSourceController();
Alexandre Leroux
Enables the registration of a data source in the controller
r36 /**
* Registers a data source. The method delivers a unique id that can be used afterwards to
* access to the data source properties (structure, connection parameters, data provider, etc.)
* @param dataSourceName the name of the data source
* @return the unique id with which the data source has been registered
*/
QUuid registerDataSource(const QString &dataSourceName) noexcept;
Alexandre Leroux
Implements the method for setting data source structure
r37 /**
* Sets the structure of a data source. The controller takes ownership of the structure.
* @param dataSourceUid the unique id with which the data source has been registered into the
* controller. If it is invalid, the method has no effect.
* @param dataSourceItem the structure of the data source
* @sa registerDataSource()
*/
void setDataSourceItem(const QUuid &dataSourceUid,
std::unique_ptr<DataSourceItem> dataSourceItem) noexcept;
Initialisation de l'application multithread avec le spimpl....
r21 public slots:
/// Manage init/end of the controller
void initialize();
void finalize();
Alexandre Leroux
Implements the method for setting data source structure
r37 signals:
/// Signal emitted when a structure has been set for a data source
void dataSourceItemSet(const DataSourceItem &dataSourceItem);
Initialisation de l'application multithread avec le spimpl....
r21 private:
void waitForFinish();
class DataSourceControllerPrivate;
spimpl::unique_impl_ptr<DataSourceControllerPrivate> impl;
};
#endif // SCIQLOP_DATASOURCECONTROLLER_H