sc_signal.hh (12912:8a06e701c31a) | sc_signal.hh (12933:9fb537a605f6) |
---|---|
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 --- 17 unchanged lines hidden (view full) --- 26 * 27 * Authors: Gabe Black 28 */ 29 30#ifndef __SYSTEMC_EXT_CHANNEL_SC_SIGNAL_HH__ 31#define __SYSTEMC_EXT_CHANNEL_SC_SIGNAL_HH__ 32 33#include <iostream> | 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 --- 17 unchanged lines hidden (view full) --- 26 * 27 * Authors: Gabe Black 28 */ 29 30#ifndef __SYSTEMC_EXT_CHANNEL_SC_SIGNAL_HH__ 31#define __SYSTEMC_EXT_CHANNEL_SC_SIGNAL_HH__ 32 33#include <iostream> |
34#include <string> 35#include <vector> |
|
34 35#include "../core/sc_module.hh" // for sc_gen_unique_name 36#include "../core/sc_prim.hh" 37#include "sc_signal_inout_if.hh" 38#include "warn_unimpl.hh" // for warn_unimpl 39 40namespace sc_core 41{ 42 43class sc_port_base; | 36 37#include "../core/sc_module.hh" // for sc_gen_unique_name 38#include "../core/sc_prim.hh" 39#include "sc_signal_inout_if.hh" 40#include "warn_unimpl.hh" // for warn_unimpl 41 42namespace sc_core 43{ 44 45class sc_port_base; |
46class sc_trace_file; |
|
44 | 47 |
48// Nonstandard 49// Despite having a warning "FOR INTERNAL USE ONLY!" in all caps above this 50// class definition in the Accellera implementation, it appears in their 51// examples and test programs, and so we need to have it here as well. 52struct sc_trace_params 53{ 54 sc_trace_file *tf; 55 std::string name; 56 57 sc_trace_params(sc_trace_file *tf, const std::string &name) : 58 tf(tf), name(name) 59 {} 60}; 61typedef std::vector<sc_trace_params *> sc_trace_params_vec; 62 |
|
45template <class T, sc_writer_policy WRITER_POLICY=SC_ONE_WRITER> 46class sc_signal : public sc_signal_inout_if<T>, 47 public sc_prim_channel 48{ 49 public: 50 sc_signal() : sc_signal_inout_if<T>(), 51 sc_prim_channel(sc_gen_unique_name("signal")) 52 {} --- 381 unchanged lines hidden --- | 63template <class T, sc_writer_policy WRITER_POLICY=SC_ONE_WRITER> 64class sc_signal : public sc_signal_inout_if<T>, 65 public sc_prim_channel 66{ 67 public: 68 sc_signal() : sc_signal_inout_if<T>(), 69 sc_prim_channel(sc_gen_unique_name("signal")) 70 {} --- 381 unchanged lines hidden --- |