sc_sensitive.cc (13207:034ca389a810) sc_sensitive.cc (13210:8f6d757c46dc)
1/*
2 * Copyright 2018 Google, Inc.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are
6 * met: redistributions of source code must retain the above copyright
7 * notice, this list of conditions and the following disclaimer;
8 * redistributions in binary form must reproduce the above copyright

--- 15 unchanged lines hidden (view full) ---

24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 *
27 * Authors: Gabe Black
28 */
29
30#include "base/logging.hh"
31#include "systemc/core/process.hh"
1/*
2 * Copyright 2018 Google, Inc.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are
6 * met: redistributions of source code must retain the above copyright
7 * notice, this list of conditions and the following disclaimer;
8 * redistributions in binary form must reproduce the above copyright

--- 15 unchanged lines hidden (view full) ---

24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 *
27 * Authors: Gabe Black
28 */
29
30#include "base/logging.hh"
31#include "systemc/core/process.hh"
32#include "systemc/ext/channel/sc_in.hh"
33#include "systemc/ext/channel/sc_inout.hh"
34#include "systemc/ext/channel/sc_signal_in_if.hh"
32#include "systemc/ext/core/sc_interface.hh"
33#include "systemc/ext/core/sc_sensitive.hh"
34
35namespace sc_core
36{
37
38sc_sensitive::sc_sensitive() : currentProcess(nullptr) {}
39

--- 27 unchanged lines hidden (view full) ---

67
68sc_sensitive &
69sc_sensitive::operator << (::sc_gem5::Process *p)
70{
71 currentProcess = p;
72 return *this;
73}
74
35#include "systemc/ext/core/sc_interface.hh"
36#include "systemc/ext/core/sc_sensitive.hh"
37
38namespace sc_core
39{
40
41sc_sensitive::sc_sensitive() : currentProcess(nullptr) {}
42

--- 27 unchanged lines hidden (view full) ---

70
71sc_sensitive &
72sc_sensitive::operator << (::sc_gem5::Process *p)
73{
74 currentProcess = p;
75 return *this;
76}
77
78
79void
80sc_sensitive::operator () (::sc_gem5::Process *p,
81 const sc_signal_in_if<bool> &i)
82{
83 sc_gem5::newStaticSensitivityEvent(p, &i.posedge_event());
84}
85
86void
87sc_sensitive::operator () (::sc_gem5::Process *p,
88 const sc_signal_in_if<sc_dt::sc_logic> &i)
89{
90 sc_gem5::newStaticSensitivityEvent(p, &i.posedge_event());
91}
92
93void
94sc_sensitive::operator () (::sc_gem5::Process *p, const sc_in<bool> &port)
95{
96 sc_gem5::newStaticSensitivityFinder(p, &port.pos());
97}
98
99void
100sc_sensitive::operator () (::sc_gem5::Process *p,
101 const sc_in<sc_dt::sc_logic> &port)
102{
103 sc_gem5::newStaticSensitivityFinder(p, &port.pos());
104}
105
106void
107sc_sensitive::operator () (::sc_gem5::Process *p, const sc_inout<bool> &port)
108{
109 sc_gem5::newStaticSensitivityFinder(p, &port.pos());
110}
111
112void
113sc_sensitive::operator () (::sc_gem5::Process *p,
114 const sc_inout<sc_dt::sc_logic> &port)
115{
116 sc_gem5::newStaticSensitivityFinder(p, &port.pos());
117}
118
119void
120sc_sensitive::operator () (::sc_gem5::Process *p, sc_event_finder &f)
121{
122 sc_gem5::newStaticSensitivityFinder(p, &f);
123}
124
75} // namespace sc_core
125} // namespace sc_core