diff options
author | Gabe Black <gabeblack@google.com> | 2018-06-15 23:18:24 -0700 |
---|---|---|
committer | Gabe Black <gabeblack@google.com> | 2018-08-28 21:22:19 +0000 |
commit | 6d9b0de3b5a6b46addfd97e57f68b1180e7afa39 (patch) | |
tree | d561d3784fcb853f960a2e77c701d5c08b3a3413 | |
parent | 8f04ccbb0e27354b9c32564386bc6a64b94669dc (diff) | |
download | gem5-6d9b0de3b5a6b46addfd97e57f68b1180e7afa39.tar.xz |
systemc: Add the nonstandard sc_trace_params and sc_trace_params_vec.
These two types are supposedly only for internal use in the Accellera
implementation based on a big warning in all caps, but they still
appear in the tests and examples in that version of systemc.
Change-Id: Icfb3ffdf1e78988def5dac145172bf28f93d7d38
Reviewed-on: https://gem5-review.googlesource.com/11283
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
-rw-r--r-- | src/systemc/ext/channel/sc_signal.hh | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/systemc/ext/channel/sc_signal.hh b/src/systemc/ext/channel/sc_signal.hh index de571b23e..b41af56bb 100644 --- a/src/systemc/ext/channel/sc_signal.hh +++ b/src/systemc/ext/channel/sc_signal.hh @@ -31,6 +31,8 @@ #define __SYSTEMC_EXT_CHANNEL_SC_SIGNAL_HH__ #include <iostream> +#include <string> +#include <vector> #include "../core/sc_module.hh" // for sc_gen_unique_name #include "../core/sc_prim.hh" @@ -41,6 +43,22 @@ namespace sc_core { class sc_port_base; +class sc_trace_file; + +// Nonstandard +// Despite having a warning "FOR INTERNAL USE ONLY!" in all caps above this +// class definition in the Accellera implementation, it appears in their +// examples and test programs, and so we need to have it here as well. +struct sc_trace_params +{ + sc_trace_file *tf; + std::string name; + + sc_trace_params(sc_trace_file *tf, const std::string &name) : + tf(tf), name(name) + {} +}; +typedef std::vector<sc_trace_params *> sc_trace_params_vec; template <class T, sc_writer_policy WRITER_POLICY=SC_ONE_WRITER> class sc_signal : public sc_signal_inout_if<T>, |