##// END OF EJS Templates
Adds weights to operations (1)...
Adds weights to operations (1) Modifies the algorithm for choosing a random element to add weights

File last commit:

r1164:b6390f556418
r1182:cb9ad4b9f97b
Show More
CatalogueController.h
75 lines | 2.3 KiB | text/x-c | CLexer
#ifndef SCIQLOP_CATALOGUECONTROLLER_H
#define SCIQLOP_CATALOGUECONTROLLER_H
#include "CoreGlobal.h"
#include <Data/SqpRange.h>
#include <QLoggingCategory>
#include <QObject>
#include <QUuid>
#include <Common/spimpl.h>
#include <memory>
class DBCatalogue;
class DBEvent;
Q_DECLARE_LOGGING_CATEGORY(LOG_CatalogueController)
class DataSourceItem;
class Variable;
/**
* @brief The CatalogueController class aims to handle catalogues and event using the CatalogueAPI
* library.
*/
class SCIQLOP_CORE_EXPORT CatalogueController : public QObject {
Q_OBJECT
public:
explicit CatalogueController(QObject *parent = 0);
virtual ~CatalogueController();
// DB
QStringList getRepositories() const;
void addDB(const QString &dbPath);
void saveDB(const QString &destinationPath, const QString &repository);
// Event
/// retrieveEvents with empty repository retrieve them from the default repository
std::list<std::shared_ptr<DBEvent> > retrieveEvents(const QString &repository) const;
std::list<std::shared_ptr<DBEvent> > retrieveAllEvents() const;
std::list<std::shared_ptr<DBEvent> >
retrieveEventsFromCatalogue(std::shared_ptr<DBCatalogue> catalogue) const;
void addEvent(std::shared_ptr<DBEvent> event);
void updateEvent(std::shared_ptr<DBEvent> event);
void removeEvent(std::shared_ptr<DBEvent> event);
// void trashEvent(std::shared_ptr<DBEvent> event);
// void restore(QUuid eventId);
void saveEvent(std::shared_ptr<DBEvent> event);
// Catalogue
// bool createCatalogue(const QString &name, QVector<QUuid> eventList);
/// retrieveEvents with empty repository retrieve them from the default repository
std::list<std::shared_ptr<DBCatalogue> > retrieveCatalogues(const QString &repository
= QString()) const;
void updateCatalogue(std::shared_ptr<DBCatalogue> catalogue);
void removeCatalogue(std::shared_ptr<DBCatalogue> catalogue);
void saveCatalogue(std::shared_ptr<DBCatalogue> catalogue);
void saveAll();
public slots:
/// Manage init/end of the controller
void initialize();
void finalize();
private:
void waitForFinish();
class CatalogueControllerPrivate;
spimpl::unique_impl_ptr<CatalogueControllerPrivate> impl;
};
#endif // SCIQLOP_CATALOGUECONTROLLER_H