SystemC Library API Reference Manual
Reference documentation for the Simics SystemC Library.
 
Loading...
Searching...
No Matches
process_stack.h
Go to the documentation of this file.
1/*
2 © 2016 Intel Corporation
3
4 This software and the related documents are Intel copyrighted materials, and
5 your use of them is governed by the express license under which they were
6 provided to you ("License"). Unless the License provides otherwise, you may
7 not use, modify, copy, publish, distribute, disclose or transmit this software
8 or the related documents without Intel's prior written permission.
9
10 This software and the related documents are provided as is, with no express or
11 implied warranties, other than those that are expressly stated in the License.
12*/
13
14#ifndef SIMICS_SYSTEMC_PROCESS_STACK_H
15#define SIMICS_SYSTEMC_PROCESS_STACK_H
16
19
20#include <systemc>
21#include <stack>
22
23namespace simics {
24namespace systemc {
25
28 public:
30 /* ProcessStackInterface */
31 void push() override;
32 void pop() override;
34 void runUntilStackEmpty() override;
36 sc_core::sc_curr_proc_kind enter_process_kind) override;
37
38 private:
39 std::stack<sc_core::sc_process_handle> stack_;
40 sc_core::sc_event return_event_;
41 iface::SimulationInterface *simulation_;
42};
43
44} // namespace systemc
45} // namespace simics
46
47#endif
The process stack helps maintain a LIFO order of function calls that cross the SystemC/Simics border,...
Definition: process_stack_interface.h:25
Definition: process_stack.h:27
void waitForCurrentProcessOnTop() override
void runUntilStackEmpty() override
void waitForExitCondition(sc_core::sc_curr_proc_kind enter_process_kind) override
ProcessStack(iface::SimulationInterface *simulation)
Interface to the SystemC simulation.
Definition: simulation_interface.h:25
Definition: adapter.h:79