17#ifndef _SCC_CONFIGURABLE_TRACER_H_
18#define _SCC_CONFIGURABLE_TRACER_H_
45 configurable_tracer(std::string
const&& name,
bool enable_tx =
true,
bool enable_vcd =
true, sc_core::sc_object* top =
nullptr);
54 configurable_tracer(std::string
const& name,
bool enable_tx =
true,
bool enable_vcd =
true, sc_core::sc_object* top =
nullptr)
121 for(
auto* o : sc_core::sc_get_top_level_objects())
123 control_added =
true;
128 void descend(
const sc_core::sc_object*,
bool trace_all =
false)
override;
134 void end_of_elaboration()
override;
136 std::vector<cci::cci_param_untyped*>
params;
137 bool control_added{
false};
configurable tracer for automatic port and signal tracing
configurable_tracer(std::string const &name, bool enable_tx=true, bool enable_vcd=true, sc_core::sc_object *top=nullptr)
void add_control(bool trace_default)
configurable_tracer(std::string const &name, file_type type, bool enable_vcd=true, sc_core::sc_object *top=nullptr)
configurable_tracer(std::string const &&name, bool enable_tx=true, bool enable_vcd=true, sc_core::sc_object *top=nullptr)
bool get_trace_enabled(const sc_core::sc_object *, bool=false)
check for existence of 'enableTracing' attribute and return value of default otherwise
void augment_object_hierarchical(sc_core::sc_object *, bool)
add the 'enableTracing' attribute to sc_module
configurable_tracer(std::string const &name, file_type type, sc_core::sc_trace_file *tf=nullptr, sc_core::sc_object *top=nullptr)
void descend(const sc_core::sc_object *, bool trace_all=false) override
depth-first walk thru the design hierarchy and trace signals resp. call trace() function
std::vector< cci::cci_param_untyped * > params
array of created cci parameter
file_type
defines the transaction trace output type
cci::cci_param_handle default_trace_enable_handle