aboutsummaryrefslogtreecommitdiff
path: root/qtmips_machine/instruction.h
diff options
context:
space:
mode:
Diffstat (limited to 'qtmips_machine/instruction.h')
-rw-r--r--qtmips_machine/instruction.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/qtmips_machine/instruction.h b/qtmips_machine/instruction.h
index 3b76fba..921d9b0 100644
--- a/qtmips_machine/instruction.h
+++ b/qtmips_machine/instruction.h
@@ -1,14 +1,18 @@
#ifndef INSTRUCTION_H
#define INSTRUCTION_H
+#include <QObject>
#include <qstring.h>
-class Instruction {
+class Instruction : public QObject {
+ Q_OBJECT
public:
+ Instruction();
Instruction(std::uint32_t inst);
Instruction(std::uint8_t opcode, std::uint8_t rs, std::uint8_t rt, std::uint8_t rd, std::uint8_t shamt, std::uint8_t funct); // Type R
Instruction(std::uint8_t opcode, std::uint8_t rs, std::uint8_t rt, std::uint16_t immediate); // Type I
Instruction(std::uint8_t opcode, std::uint32_t address); // Type J
+ Instruction(const Instruction&);
QString to_str();
@@ -28,4 +32,6 @@ private:
std::uint32_t dt;
};
+Q_DECLARE_METATYPE(Instruction)
+
#endif // INSTRUCTION_H