diff options
author | bd <bdunahu@operationnull.com> | 2025-04-23 00:27:50 -0400 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2025-04-23 00:27:50 -0400 |
commit | 051041c9cbe0752a50ac1a464df1c554b10cde0c (patch) | |
tree | 8eee7e2104b6aba4a03f4e9bccc2c93314f2bbf2 /tests | |
parent | 7bbc7c7fea9bafc55754a1cf010f6553cce7d659 (diff) |
Move dum class to tests folder
Diffstat (limited to 'tests')
-rw-r--r-- | tests/dum.h | 35 |
1 files changed, 35 insertions, 0 deletions
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 */ |