From: Gabe Black Date: Tue, 9 Oct 2018 23:21:34 +0000 (-0700) Subject: systemc: Add an accessor for getting the current process. X-Git-Tag: v19.0.0.0~1490 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=96a88fbeddb354cddfbbbcc905ba5bb84cf4dde1;p=gem5.git systemc: Add an accessor for getting the current process. This is to avoid having to expose the scheduler (which tracks the current process) to header files which should be independent of gem5 and the underlying implementation. Change-Id: I1b0810ab66c3ce52b5b94236d7df86da66a62472 Reviewed-on: https://gem5-review.googlesource.com/c/13335 Reviewed-by: Gabe Black Maintainer: Gabe Black --- diff --git a/src/systemc/core/scheduler.cc b/src/systemc/core/scheduler.cc index 52bf7ec31..5e96a47d5 100644 --- a/src/systemc/core/scheduler.cc +++ b/src/systemc/core/scheduler.cc @@ -457,6 +457,7 @@ Scheduler::trace(bool delta) } Scheduler scheduler; +Process *getCurrentProcess() { return scheduler.current(); } namespace { diff --git a/src/systemc/core/scheduler.hh b/src/systemc/core/scheduler.hh index 14dee2e6f..2ae03ea1b 100644 --- a/src/systemc/core/scheduler.hh +++ b/src/systemc/core/scheduler.hh @@ -491,6 +491,9 @@ class Scheduler extern Scheduler scheduler; +// A proxy function to avoid having to expose the scheduler in header files. +Process *getCurrentProcess(); + inline void Scheduler::TimeSlot::process() {