52 lines
1.1 KiB
C++
52 lines
1.1 KiB
C++
#ifndef CONTROLLER_H
|
|
#define CONTROLLER_H
|
|
|
|
#include <QObject>
|
|
#include <QMetaType>
|
|
|
|
class Controller : public QObject
|
|
{
|
|
Q_OBJECT
|
|
Q_PROPERTY(bool available READ available NOTIFY availableChanged)
|
|
Q_PROPERTY(QString firmware READ firmware NOTIFY firmwareChanged)
|
|
Q_PROPERTY(int id READ id NOTIFY idChanged)
|
|
Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
|
|
Q_PROPERTY(QString serial READ serial NOTIFY serialChanged)
|
|
Q_PROPERTY(int type READ type NOTIFY typeChanged())
|
|
|
|
public:
|
|
explicit Controller(int id = 0, int type = 1, const QString &name = "", QObject *parent = 0);
|
|
~Controller();
|
|
|
|
bool available() const;
|
|
void setAvailable(bool available);
|
|
|
|
QString firmware() const;
|
|
|
|
int id() const;
|
|
|
|
QString name() const;
|
|
void setName(const QString &name);
|
|
|
|
void save();
|
|
|
|
QString serial() const;
|
|
|
|
int type() const;
|
|
|
|
signals:
|
|
void availableChanged();
|
|
void firmwareChanged();
|
|
void idChanged();
|
|
void nameChanged();
|
|
void serialChanged();
|
|
void typeChanged();
|
|
|
|
private:
|
|
class PrivateData;
|
|
PrivateData *d;
|
|
};
|
|
|
|
Q_DECLARE_METATYPE(Controller*)
|
|
|
|
#endif // CONTROLLER_H
|