##// END OF EJS Templates
Add the VarRequestId on the AcquisitionPacket
Add the VarRequestId on the AcquisitionPacket

File last commit:

r425:b8af3b4730c2
r583:eca175f15252
Show More
DataSourceItemAction.h
52 lines | 1.3 KiB | text/x-c | CLexer
/ core / include / DataSource / DataSourceItemAction.h
Alexandre Leroux
Defines actions for a data source items...
r135 #ifndef SCIQLOP_DATASOURCEITEMACTION_H
#define SCIQLOP_DATASOURCEITEMACTION_H
Alexandre Leroux
Exports core module as a shared library...
r425 #include "CoreGlobal.h"
Alexandre Leroux
Defines actions for a data source items...
r135 #include <Common/spimpl.h>
#include <QLoggingCategory>
#include <QObject>
Add functionnal include missing
r400 #include <functional>
Alexandre Leroux
Defines actions for a data source items...
r135 Q_DECLARE_LOGGING_CATEGORY(LOG_DataSourceItemAction)
class DataSourceItem;
/**
* @brief The DataSourceItemAction class represents an action on a data source item.
*
* An action is a function that will be executed when the slot execute() is called.
*/
Alexandre Leroux
Exports core module as a shared library...
r425 class SCIQLOP_CORE_EXPORT DataSourceItemAction : public QObject {
Alexandre Leroux
Defines actions for a data source items...
r135
Q_OBJECT
public:
/// Signature of the function associated to the action
using ExecuteFunction = std::function<void(DataSourceItem &dataSourceItem)>;
/**
* Ctor
* @param name the name of the action
* @param fun the function that will be called when the action is executed
* @sa execute()
*/
explicit DataSourceItemAction(const QString &name, ExecuteFunction fun);
QString name() const noexcept;
/// Sets the data source item concerned by the action
void setDataSourceItem(DataSourceItem *dataSourceItem) noexcept;
public slots:
/// Executes the action
void execute();
private:
class DataSourceItemActionPrivate;
spimpl::unique_impl_ptr<DataSourceItemActionPrivate> impl;
};
#endif // SCIQLOP_DATASOURCEITEMACTION_H