55 lines
1.5 KiB
C++
55 lines
1.5 KiB
C++
#ifndef BENCHMARKVIEWMODEL_H
|
|
#define BENCHMARKVIEWMODEL_H
|
|
|
|
#include <QObject>
|
|
|
|
class BenchmarkViewModel : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
Q_PROPERTY(int itemsCount READ itemsCount WRITE setItemsCount NOTIFY itemsCountChanged)
|
|
Q_PROPERTY(quint64 submitTime READ submitTime WRITE setSubmitTime NOTIFY submitTimeChanged)
|
|
Q_PROPERTY(quint64 receiveTime READ receiveTime WRITE setReceiveTime NOTIFY receiveTimeChanged)
|
|
Q_PROPERTY(quint64 removeTime READ removeTime WRITE setRemoveTime NOTIFY removeTimeChanged)
|
|
Q_PROPERTY(bool inProgress READ inProgress WRITE setInProgress NOTIFY inProgressChanged)
|
|
|
|
public:
|
|
explicit BenchmarkViewModel(QObject *parent = nullptr);
|
|
|
|
Q_INVOKABLE void startBenchmark();
|
|
|
|
int itemsCount() const;
|
|
void setItemsCount(int newItemsCount);
|
|
|
|
quint64 submitTime() const;
|
|
void setSubmitTime(quint64 newSubmitTime);
|
|
|
|
quint64 receiveTime() const;
|
|
void setReceiveTime(quint64 newReceiveTime);
|
|
|
|
quint64 removeTime() const;
|
|
void setRemoveTime(quint64 newRemoveTime);
|
|
|
|
bool inProgress() const;
|
|
void setInProgress(bool newInProgress);
|
|
|
|
signals:
|
|
void itemsCountChanged();
|
|
void submitTimeChanged();
|
|
void receiveTimeChanged();
|
|
void removeTimeChanged();
|
|
void inProgressChanged();
|
|
|
|
private:
|
|
void submitBenchmark();
|
|
void receiveAndDeleteBenchmark();
|
|
|
|
int m_itemsCount = 0;
|
|
quint64 m_submitTime = 0;
|
|
quint64 m_receiveTime = 0;
|
|
quint64 m_removeTime = 0;
|
|
bool m_inProgress = false;
|
|
};
|
|
|
|
#endif // BENCHMARKVIEWMODEL_H
|