scc 2025.09
SystemC components library
scc::tracer Class Reference

a component traversing the SystemC object hierarchy and tracing the objects More...

#include <tracer.h>

Inheritance diagram for scc::tracer:
Collaboration diagram for scc::tracer:

Public Types

enum  file_type {
  NONE , ENABLE , TEXT , COMPRESSED ,
  SQLITE , FTR , CFTR , LWFTR ,
  LWCFTR , CUSTOM , SC_VCD = TEXT , PULL_VCD = COMPRESSED ,
  PUSH_VCD = SQLITE , FST
}
 defines the transaction trace output type More...

Public Member Functions

 tracer (std::string const &&name, file_type tx_type, file_type sig_type, sc_core::sc_object *top=nullptr)
 tracer (std::string const &name, file_type tx_type=ENABLE, file_type sig_type=ENABLE, sc_core::sc_object *top=nullptr)
 tracer (std::string const &&name, file_type type, bool enable=true, sc_core::sc_object *top=nullptr)
 tracer (std::string const &name, file_type type, bool enable=true, sc_core::sc_object *top=nullptr)
 tracer (std::string const &&name, file_type type, sc_core::sc_trace_file *tf, sc_core::sc_object *top=nullptr)
 tracer (std::string const &name, file_type type, sc_core::sc_trace_file *tf, sc_core::sc_object *top=nullptr)
virtual ~tracer () override
 the destructor
Public Member Functions inherited from scc::tracer_base
 tracer_base (const sc_core::sc_module_name &nm)
 named constructor
 tracer_base (const sc_core::sc_module_name &nm, sc_core::sc_trace_file *tf, bool owned=true)
 named constructor with trace file
 ~tracer_base ()
 destructor
void set_trace_types (trace_types t)
 set the types to trace
const sc_core::sc_trace_file * get_trace_file () const
 get the tracefile used by this tracer
sc_core::sc_trace_file * get_trace_file ()
void set_trace_file (sc_core::sc_trace_file *trf)
 set the trace file of this tracer

Public Attributes

cci::cci_param_handle tx_trace_type_handle
cci::cci_param_handle sig_trace_type_handle
cci::cci_param_handle close_db_in_eos_handle
Public Attributes inherited from scc::tracer_base
cci::cci_param_handle default_trace_enable_handle

Protected Member Functions

 tracer (std::string const &&name, file_type tx_type, file_type sig_type, sc_core::sc_object *top, sc_core::sc_module_name const &nm)
 tracer (std::string const &&name, file_type type, sc_core::sc_trace_file *tf, sc_core::sc_object *top, sc_core::sc_module_name const &nm)
void end_of_elaboration () override
void end_of_simulation () override
Protected Member Functions inherited from scc::tracer_base
virtual void descend (const sc_core::sc_object *, bool trace_all)

Protected Attributes

scv_tr::scv_tr_db * txdb {nullptr}
lwtr::tx_db * lwtr_db {nullptr}
std::unique_ptr< cci::cci_param< unsigned > > tx_trace_type
std::unique_ptr< cci::cci_param< unsigned > > sig_trace_type
std::unique_ptr< cci::cci_param< bool > > close_db_in_eos
Protected Attributes inherited from scc::tracer_base
sc_core::sc_trace_file * trf {nullptr}
trace_types types_to_trace {trace_types::ALL}
cci::cci_broker_handle cci_broker
std::unique_ptr< cci::cci_param< bool > > default_trace_enable

Additional Inherited Members

Static Public Member Functions inherited from scc::tracer_base
static void set_default_trace_enable (bool)
static bool get_default_trace_enable ()
Static Protected Member Functions inherited from scc::tracer_base
static std::string get_name ()
static void try_trace (sc_core::sc_trace_file *trace_file, const sc_core::sc_object *object, trace_types t)

Detailed Description

a component traversing the SystemC object hierarchy and tracing the objects

Definition at line 51 of file tracer.h.

Member Enumeration Documentation

◆ file_type

defines the transaction trace output type

CUSTOM means the caller needs to initialize the database driver (scv_tr_text_init() or alike)

Definition at line 59 of file tracer.h.

Constructor & Destructor Documentation

◆ tracer() [1/8]

scc::tracer::tracer ( std::string const && name,
file_type tx_type,
file_type sig_type,
sc_core::sc_object * top = nullptr )
inline

Definition at line 98 of file tracer.h.

◆ tracer() [2/8]

scc::tracer::tracer ( std::string const & name,
file_type tx_type = ENABLE,
file_type sig_type = ENABLE,
sc_core::sc_object * top = nullptr )
inline

Definition at line 108 of file tracer.h.

◆ tracer() [3/8]

scc::tracer::tracer ( std::string const && name,
file_type type,
bool enable = true,
sc_core::sc_object * top = nullptr )
inline

Definition at line 118 of file tracer.h.

◆ tracer() [4/8]

scc::tracer::tracer ( std::string const & name,
file_type type,
bool enable = true,
sc_core::sc_object * top = nullptr )
inline

Definition at line 128 of file tracer.h.

◆ tracer() [5/8]

scc::tracer::tracer ( std::string const && name,
file_type type,
sc_core::sc_trace_file * tf,
sc_core::sc_object * top = nullptr )
inline

Definition at line 138 of file tracer.h.

◆ tracer() [6/8]

scc::tracer::tracer ( std::string const & name,
file_type type,
sc_core::sc_trace_file * tf,
sc_core::sc_object * top = nullptr )
inline

Definition at line 148 of file tracer.h.

◆ ~tracer()

tracer::~tracer ( )
overridevirtual

the destructor

Definition at line 93 of file tracer.cpp.

◆ tracer() [7/8]

tracer::tracer ( std::string const && name,
file_type tx_type,
file_type sig_type,
sc_core::sc_object * top,
sc_core::sc_module_name const & nm )
protected

Definition at line 53 of file tracer.cpp.

◆ tracer() [8/8]

tracer::tracer ( std::string const && name,
file_type type,
sc_core::sc_trace_file * tf,
sc_core::sc_object * top,
sc_core::sc_module_name const & nm )
protected

Definition at line 82 of file tracer.cpp.

Member Function Documentation

◆ end_of_elaboration()

void tracer::end_of_elaboration ( )
overrideprotected

Definition at line 159 of file tracer.cpp.

◆ end_of_simulation()

void tracer::end_of_simulation ( )
overrideprotected

Definition at line 166 of file tracer.cpp.

Member Data Documentation

◆ close_db_in_eos

std::unique_ptr<cci::cci_param<bool> > scc::tracer::close_db_in_eos
protected

Definition at line 170 of file tracer.h.

◆ close_db_in_eos_handle

cci::cci_param_handle scc::tracer::close_db_in_eos_handle

cci parameter handle to determine the file type being used to trace signals if not specified explicitly

Definition at line 89 of file tracer.h.

◆ lwtr_db

lwtr::tx_db* scc::tracer::lwtr_db {nullptr}
protected

Definition at line 167 of file tracer.h.

◆ sig_trace_type

std::unique_ptr<cci::cci_param<unsigned> > scc::tracer::sig_trace_type
protected

Definition at line 169 of file tracer.h.

◆ sig_trace_type_handle

cci::cci_param_handle scc::tracer::sig_trace_type_handle

cci parameter handle to determine the file type being used to trace signals if not specified explicitly

Definition at line 84 of file tracer.h.

◆ tx_trace_type

std::unique_ptr<cci::cci_param<unsigned> > scc::tracer::tx_trace_type
protected

Definition at line 168 of file tracer.h.

◆ tx_trace_type_handle

cci::cci_param_handle scc::tracer::tx_trace_type_handle

cci parameter handle to determine the file type being used to trace transaction if not specified explicitly

Definition at line 79 of file tracer.h.

◆ txdb

scv_tr::scv_tr_db* scc::tracer::txdb {nullptr}
protected

Definition at line 165 of file tracer.h.


The documentation for this class was generated from the following files:
  • /home/eyck/Projects/MINRES/SystemC-Components/src/sysc/scc/tracer.h
  • /home/eyck/Projects/MINRES/SystemC-Components/src/sysc/scc/tracer.cpp