summaryrefslogtreecommitdiff
path: root/src/systemc/ext/channel/sc_signal_rv.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemc/ext/channel/sc_signal_rv.hh')
-rw-r--r--src/systemc/ext/channel/sc_signal_rv.hh11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/systemc/ext/channel/sc_signal_rv.hh b/src/systemc/ext/channel/sc_signal_rv.hh
index 1a47e84ad..c769f377a 100644
--- a/src/systemc/ext/channel/sc_signal_rv.hh
+++ b/src/systemc/ext/channel/sc_signal_rv.hh
@@ -31,11 +31,18 @@
#define __SYSTEMC_EXT_CHANNEL_SC_SIGNAL_RV_HH__
#include "../core/sc_module.hh" // for sc_gen_unique_name
-#include "../core/scheduler.hh"
#include "../dt/bit/sc_logic.hh"
#include "../dt/bit/sc_lv.hh"
#include "sc_signal.hh"
+namespace sc_gem5
+{
+
+class Process;
+Process *getCurrentProcess();
+
+} // namespace sc_gem5
+
namespace sc_dt
{
@@ -66,7 +73,7 @@ class sc_signal_rv : public sc_signal<sc_dt::sc_lv<W>, SC_MANY_WRITERS>
virtual void
write(const sc_dt::sc_lv<W> &l)
{
- ::sc_gem5::Process *p = ::sc_gem5::scheduler.current();
+ ::sc_gem5::Process *p = ::sc_gem5::getCurrentProcess();
auto it = inputs.find(p);
if (it == inputs.end()) {