28#ifndef __SYSTEMC_CORE_PROCESS_HH__
29#define __SYSTEMC_CORE_PROCESS_HH__
65 virtual ::sc_core::sc_curr_proc_kind
procKind()
const = 0;
82 void resume(
bool inc_kids);
84 void enable(
bool inc_kids);
86 void kill(
bool inc_kids);
87 void reset(
bool inc_kids);
This class represents a fiber, which is a light weight sort of thread which is cooperatively schedule...
const char * name() const
virtual const bool & read() const =0
virtual bool _addReset(sc_gem5::Reset *reset) const
virtual::sc_core::sc_curr_proc_kind procKind() const =0
static Process * newest()
void scheduled(bool new_val)
void suspend(bool inc_kids)
void joinWait(::sc_core::sc_join *join)
void forEachKid(const std::function< void(Process *)> &work)
DynamicSensitivity * dynamicSensitivity
void resume(bool inc_kids)
void disable(bool inc_kids)
std::unique_ptr<::sc_core::sc_report > _lastReport
void syncResetOn(bool inc_kids)
std::vector<::sc_core::sc_join * > joinWaiters
void satisfySensitivity(Sensitivity *)
::sc_core::sc_report * lastReport() const
std::vector< Reset * > resets
::sc_core::sc_event & resetEvent()
void signalReset(bool set, bool sync)
virtual gem5::Fiber * fiber()
void waitCount(int count)
StaticSensitivities staticSensitivities
InternalScEvent _resetEvent
void setTimeout(::sc_core::sc_time t)
InternalScEvent _terminatedEvent
ProcessFuncWrapper * func
::sc_core::sc_event & terminatedEvent()
const char * uniqueName(const char *seed)
void setDynamic(DynamicSensitivity *)
void addStatic(StaticSensitivity *)
Process(const char *name, ProcessFuncWrapper *func, bool internal=false)
void reset(bool inc_kids)
void throw_it(ExceptionWrapperBase &exc, bool inc_kids)
void setStackSize(size_t size)
ExceptionWrapperBase * excWrapper
void dontInitialize(bool di)
void syncResetOff(bool inc_kids)
void injectException(ExceptionWrapperBase &exc)
void enable(bool inc_kids)
bool hasStaticSensitivities()
const sc_core::sc_signal_in_if< bool > * signal()
bool install(const sc_core::sc_signal_in_if< bool > *s)
const sc_core::sc_signal_in_if< bool > * _signal
Reset(Process *p, bool s, bool v)
const char * gen(std::string seed)
static Fiber * primaryFiber()
Get a pointer to the primary Fiber.
void newReset(const sc_core::sc_port_base *pb, Process *p, bool s, bool v)