76 template <
class T> 
class sc_signal_in_if;
 
   94 #define DECL_TRACE_METHOD_A(tp)                                               \ 
   95     virtual void trace( const tp& object,                                     \ 
   96                         const std::string& name ) = 0; 
   98 #define DECL_TRACE_METHOD_B(tp)                                               \ 
   99     virtual void trace( const tp& object,                                     \ 
  100                         const std::string& name,                                     \ 
  135 #undef DECL_TRACE_METHOD_A 
  136 #undef DECL_TRACE_METHOD_B 
  141     virtual void trace( 
const unsigned int& 
object,
 
  142                         const std::string& name,
 
  143                         const char** enum_literals ) = 0;
 
  146     virtual void write_comment( 
const std::string& comment ) = 0;
 
  150     virtual void space( 
int n );
 
  161     virtual void cycle( 
bool delta_cycle ) = 0;
 
  175 #define DECL_TRACE_FUNC_REF_A(tp)     \ 
  177 sc_trace( sc_trace_file* tf,          \ 
  179           const std::string& name ); 
  181 #define DECL_TRACE_FUNC_PTR_A(tp)     \ 
  183 sc_trace( sc_trace_file* tf,          \ 
  185           const std::string& name );        \ 
  187 #define DECL_TRACE_FUNC_A(tp)         \ 
  188 DECL_TRACE_FUNC_REF_A(tp)             \ 
  189 DECL_TRACE_FUNC_PTR_A(tp) 
  204 #undef DECL_TRACE_FUNC_REF_A 
  205 #undef DECL_TRACE_FUNC_PTR_A 
  206 #undef DECL_TRACE_FUNC_A 
  211 #define DEFN_TRACE_FUNC_REF_A(tp)                                             \ 
  214 sc_trace( sc_trace_file* tf, const tp& object, const std::string& name ) \ 
  217         tf->trace( object, name );                                            \ 
  221 #define DEFN_TRACE_FUNC_PTR_A(tp)                                             \ 
  224 sc_trace( sc_trace_file* tf, const tp* object, const std::string& name ) \ 
  227         tf->trace( *object, name );                                           \ 
  231 #define DEFN_TRACE_FUNC_A(tp)                                                 \ 
  232 DEFN_TRACE_FUNC_REF_A(tp)                                                     \ 
  233 DEFN_TRACE_FUNC_PTR_A(tp) 
  236 #define DEFN_TRACE_FUNC_REF_B(tp)                                             \ 
  239 sc_trace( sc_trace_file* tf, const tp& object, const std::string& name,  \ 
  240           int width = 8 * sizeof( tp ) )                                      \ 
  243         tf->trace( object, name, width );                                     \ 
  247 #define DEFN_TRACE_FUNC_PTR_B(tp)                                             \ 
  250 sc_trace( sc_trace_file* tf, const tp* object, const std::string& name,  \ 
  251           int width = 8 * sizeof( tp ) )                                      \ 
  254         tf->trace( *object, name, width );                                    \ 
  259 #define DEFN_TRACE_FUNC_B(tp)                                                 \ 
  260 DEFN_TRACE_FUNC_REF_B(tp)                                                     \ 
  261 DEFN_TRACE_FUNC_PTR_B(tp) 
  280 #undef DEFN_TRACE_FUNC_REF_A 
  281 #undef DEFN_TRACE_FUNC_PTR_A 
  282 #undef DEFN_TRACE_FUNC_A 
  284 #undef DEFN_TRACE_FUNC_REF_B 
  285 #undef DEFN_TRACE_FUNC_PTR_B 
  286 #undef DEFN_TRACE_FUNC_B 
  294           const std::string& name )
 
  296     sc_trace( tf, 
object.read(), name );
 
  306     sc_trace( tf, 
object.read(), name );
 
  313                const sc_signal_in_if<char>& 
object,
 
  314                const std::string& name,
 
  318                const sc_signal_in_if<short>& 
object,
 
  319                const std::string& name,
 
  323                const sc_signal_in_if<int>& 
object,
 
  324                const std::string& name,
 
  328                const sc_signal_in_if<long>& 
object,
 
  329                const std::string& name,
 
  344           const unsigned int& 
object,
 
  345           const std::string& name,
 
  346           const char** enum_literals );
 
  351 extern void sc_trace( sc_trace_file* tf,
 
  353                       const std::string& name );
 
  379 void tprintf( sc_trace_file* tf,  
const char* format, ... );
 
virtual void delta_cycles(bool flag)
 
#define DECL_TRACE_METHOD_A(tp)
 
void sc_write_comment(sc_trace_file *tf, const std::string &comment)
 
void sc_close_vcd_trace_file(sc_trace_file *tf)
 
#define DEFN_TRACE_FUNC_B(tp)
 
virtual void set_time_unit(double v, sc_time_unit tu)=0
 
sc_trace_file * sc_create_vcd_trace_file(const char *name)
 
#define DEFN_TRACE_FUNC_A(tp)
 
#define DECL_TRACE_FUNC_REF_A(tp)
 
virtual void trace(const unsigned int &object, const std::string &name, const char **enum_literals)=0
 
void tprintf(sc_trace_file *tf, const char *format,...)
 
The sc_signal<T> input interface class. 
 
virtual void write_comment(const std::string &comment)=0
 
#define DECL_TRACE_METHOD_B(tp)
 
#define DECL_TRACE_FUNC_A(tp)
 
virtual void cycle(bool delta_cycle)=0
 
virtual void space(int n)
 
void sc_close_wif_trace_file(sc_trace_file *tf)
 
void sc_trace(sc_trace_file *tf, const sc_in< T > &port, const std::string &name)
 
sc_trace_file * sc_create_wif_trace_file(const char *name)
 
void sc_trace_delta_cycles(sc_trace_file *tf, bool on=true)