sc_vcd_trace.cpp File Reference

#include <assert.h>
#include <time.h>
#include <cstdlib>
#include "sysc/kernel/sc_simcontext.h"
#include "sysc/kernel/sc_ver.h"
#include "sysc/datatypes/bit/sc_bit.h"
#include "sysc/datatypes/bit/sc_logic.h"
#include "sysc/datatypes/bit/sc_lv_base.h"
#include "sysc/datatypes/int/sc_signed.h"
#include "sysc/datatypes/int/sc_unsigned.h"
#include "sysc/datatypes/int/sc_int_base.h"
#include "sysc/datatypes/int/sc_uint_base.h"
#include "sysc/datatypes/fx/fx.h"
#include "sysc/tracing/sc_vcd_trace.h"

Include dependency graph for sc_vcd_trace.cpp:

Go to the source code of this file.

Namespaces

namespace  sc_core

Classes

class  sc_core::vcd_trace
class  sc_core::vcd_T_trace< T >
class  sc_core::vcd_bool_trace
class  sc_core::vcd_sc_bit_trace
class  sc_core::vcd_sc_logic_trace
class  sc_core::vcd_sc_unsigned_trace
class  sc_core::vcd_sc_signed_trace
class  sc_core::vcd_sc_uint_base_trace
class  sc_core::vcd_sc_int_base_trace
class  sc_core::vcd_sc_fxval_trace
class  sc_core::vcd_sc_fxval_fast_trace
class  sc_core::vcd_sc_fxnum_trace
class  sc_core::vcd_sc_fxnum_fast_trace
class  sc_core::vcd_unsigned_int_trace
class  sc_core::vcd_unsigned_short_trace
class  sc_core::vcd_unsigned_char_trace
class  sc_core::vcd_unsigned_long_trace
class  sc_core::vcd_signed_int_trace
class  sc_core::vcd_signed_short_trace
class  sc_core::vcd_signed_char_trace
class  sc_core::vcd_int64_trace
class  sc_core::vcd_uint64_trace
class  sc_core::vcd_signed_long_trace
class  sc_core::vcd_float_trace
class  sc_core::vcd_double_trace
class  sc_core::vcd_enum_trace

Defines

#define DEFN_TRACE_METHOD(tp)
#define DEFN_TRACE_METHOD(tp)
#define DEFN_TRACE_METHOD_SIGNED(tp)
#define DEFN_TRACE_METHOD_UNSIGNED(tp)
#define DEFN_TRACE_METHOD_LONG_LONG(tp)

Typedefs

typedef vcd_T_trace
< sc_dt::sc_bv_base
sc_core::vcd_sc_bv_trace
typedef vcd_T_trace
< sc_dt::sc_lv_base
sc_core::vcd_sc_lv_trace

Functions

static char sc_core::map_sc_logic_state_to_vcd_state (char in_char)
static void sc_core::remove_vcd_name_problems (std::string &name)
sc_trace_file * sc_core::sc_create_vcd_trace_file (const char *name)
void sc_core::sc_close_vcd_trace_file (sc_trace_file *tf)

Variables

static bool sc_core::running_regression = false
const char * sc_core::vcd_types [vcd_trace_file::VCD_LAST] = {"wire","real"}


Define Documentation

#define DEFN_TRACE_METHOD ( tp   ) 

Value:

void                                                                          \
vcd_trace_file::trace(const sc_dt::tp& object_, const std::string& name_)\
{                                                                             \
    if( initialized ) {                                                       \
        put_error_message(                                                \
        "No traces can be added once simulation has started.\n"           \
            "To add traces, create a new vcd trace file.", false );           \
    }                                                                         \
    std::string temp_vcd_name;                                           \
    create_vcd_name( &temp_vcd_name );                                        \
    traces.push_back( new vcd_ ## tp ## _trace( object_,                      \
                        name_,                        \
                        temp_vcd_name ) );            \
}

Definition at line 1854 of file sc_vcd_trace.cpp.

#define DEFN_TRACE_METHOD ( tp   ) 

Value:

void                                                                          \
vcd_trace_file::trace(const tp& object_, const std::string& name_)       \
{                                                                             \
    if( initialized ) {                                                       \
        put_error_message(                                                \
        "No traces can be added once simulation has started.\n"               \
            "To add traces, create a new vcd trace file.", false );           \
    }                                                                         \
    std::string temp_vcd_name;                                           \
    create_vcd_name( &temp_vcd_name );                                        \
    traces.push_back( new vcd_ ## tp ## _trace( object_,                      \
                        name_,                        \
                        temp_vcd_name ) );            \
}

Definition at line 1854 of file sc_vcd_trace.cpp.

#define DEFN_TRACE_METHOD_LONG_LONG ( tp   ) 

Value:

void                                                                          \
vcd_trace_file::trace( const sc_dt::tp& object_,                              \
                       const std::string&   name_,                       \
                       int                width_ )                            \
{                                                                             \
    if( initialized ) {                                                       \
        put_error_message(                                                \
        "No traces can be added once simulation has started.\n"           \
            "To add traces, create a new vcd trace file.", false );           \
    }                                                                         \
    std::string temp_vcd_name;                                           \
    create_vcd_name( &temp_vcd_name );                                        \
    traces.push_back( new vcd_ ## tp ## _trace( object_,                      \
                                         name_,               \
                                 temp_vcd_name,       \
                                                         width_ ) );          \
}

Definition at line 1937 of file sc_vcd_trace.cpp.

#define DEFN_TRACE_METHOD_SIGNED ( tp   ) 

Value:

void                                                                          \
vcd_trace_file::trace( const tp&        object_,                              \
                       const std::string& name_,                         \
                       int              width_ )                              \
{                                                                             \
    if( initialized ) {                                                       \
        put_error_message(                                                \
        "No traces can be added once simulation has started.\n"           \
            "To add traces, create a new vcd trace file.", false );           \
    }                                                                         \
    std::string temp_vcd_name;                                           \
    create_vcd_name( &temp_vcd_name );                                        \
    traces.push_back( new vcd_signed_ ## tp ## _trace( object_,               \
                                   name_,                 \
                               temp_vcd_name,         \
                                                       width_ ) );            \
}

Definition at line 1886 of file sc_vcd_trace.cpp.

#define DEFN_TRACE_METHOD_UNSIGNED ( tp   ) 

Value:

void                                                                          \
vcd_trace_file::trace( const unsigned tp& object_,                            \
                       const std::string&   name_,                       \
                       int                width_ )                            \
{                                                                             \
    if( initialized ) {                                                       \
        put_error_message(                                                \
        "No traces can be added once simulation has started.\n"           \
            "To add traces, create a new vcd trace file.", false );           \
    }                                                                         \
    std::string temp_vcd_name;                                           \
    create_vcd_name( &temp_vcd_name );                                        \
    traces.push_back( new vcd_unsigned_ ## tp ## _trace( object_,             \
                                         name_,               \
                                 temp_vcd_name,       \
                                                         width_ ) );          \
}

Definition at line 1905 of file sc_vcd_trace.cpp.


Generated on Wed Jan 21 15:32:11 2009 for SystemC by  doxygen 1.5.5