From 051041c9cbe0752a50ac1a464df1c554b10cde0c Mon Sep 17 00:00:00 2001 From: bd Date: Wed, 23 Apr 2025 00:27:50 -0400 Subject: Move dum class to tests folder --- tests/dum.h | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 tests/dum.h (limited to 'tests') diff --git a/tests/dum.h b/tests/dum.h new file mode 100644 index 0000000..5bfc646 --- /dev/null +++ b/tests/dum.h @@ -0,0 +1,35 @@ +#ifndef DUM_H +#define DUM_H + +#include "instrDTO.h" +#include "response.h" +#include "stage.h" + +/** + * Don't underestimate mocks (the DUM pipe stage). + */ +class DUM : public Stage +{ + public: + using Stage::Stage; + + InstrDTO *advance(Response p) override + { + InstrDTO *r = nullptr; + + if (this->curr_instr && p == WAIT) { + r = new InstrDTO(*this->curr_instr); + delete this->curr_instr; + curr_instr = nullptr; + } + + return r; + } + + void set_curr_instr(InstrDTO *d) { this->curr_instr = d; }; + + private: + void advance_helper() override{}; +}; + +#endif /* DUM_H_INCLUDED */ -- cgit v1.2.3