#ifndef REGISTERDEVICE_H #define REGISTERDEVICE_H #include #include "register.h" #include "savable.h" #include "Device/device.h" class RegisterDevice : public Savable { public: static RegisterDevice *create(Device *dev, int number, QString partnumber, QString name); ~RegisterDevice(); void setRegister(int address, unsigned long value); QWidget *getWidget() const; QString getPartnumber() const; QString getName() const; protected: void addRegister(Register *reg); nlohmann::json registersToJSON(); void registersFromJSON(nlohmann::json j); RegisterDevice(); Device *dev; int number; QString partnumber; QString name; std::vector regs; QWidget *widget; }; #endif // REGISTERDEVICE_H