You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
660 B

2 years ago
#ifndef CSCI_OPERATOR_H
#define CSCI_OPERATOR_H
2 years ago
#include <QVariant>
#include <QCryptographicHash>
2 years ago
class Operator {
2 years ago
private:
int _modeType;
int _signalType;
QMap<QString, QVariant> _params;
QString _paramsHash;
2 years ago
2 years ago
QString _motionLib;
QString _signalLib;
2 years ago
2 years ago
QList<QVariant> _states;
2 years ago
2 years ago
private:
2 years ago
2 years ago
void _deduceMotionLib();
2 years ago
2 years ago
void _deduceSignalLib();
2 years ago
2 years ago
QString _hash();
2 years ago
2 years ago
public:
2 years ago
2 years ago
/// 初始化
void init(int modelType, int signalType, const QMap<QString, QVariant>& params);
2 years ago
2 years ago
/// 更新
void update();
2 years ago
2 years ago
/// 上报状态
QVariant report(int beat);
2 years ago
2 years ago
bool shouldUpdate();
2 years ago
};
#endif //CSCI_OPERATOR_H