14#ifndef SIMICS_SYSTEMC_IFACE_SC_PROCESS_PROFILER_CONTROL_SIMICS_ADAPTER_H
15#define SIMICS_SYSTEMC_IFACE_SC_PROCESS_PROFILER_CONTROL_SIMICS_ADAPTER_H
20#include <systemc-interfaces.h>
30template<
typename TBase,
31 typename TInterface = ScProcessProfilerControlInterface>
33 :
public SimicsAdapter<sc_process_profiler_control_interface_t> {
37 SC_PROCESS_PROFILER_CONTROL_INTERFACE,
43 return adapter<TBase, TInterface>(obj)->is_enabled();
46 return adapter<TBase, TInterface>(obj)->set_enabled(enable);
49 return adapter<TBase, TInterface>(obj)->total_time();
52 return adapter<TBase, TInterface>(obj)->total_number_of_calls();
55 return adapter<TBase, TInterface>(obj)->clear_data();
59 std::vector<std::string> description(conf_object_t *obj,
61 return descriptionBase<TBase, TInterface>(obj, type);
63 sc_process_profiler_control_interface_t init_iface() {
64 sc_process_profiler_control_interface_t iface = {};
Definition: sc_process_profiler_control_simics_adapter.h:33
ScProcessProfilerControlSimicsAdapter()
Definition: sc_process_profiler_control_simics_adapter.h:35
::uint64 total_time(conf_object_t *obj)
Definition: sc_process_profiler_control_simics_adapter.h:48
static bool is_enabled(conf_object_t *obj)
Definition: sc_process_profiler_control_simics_adapter.h:42
static void set_enabled(conf_object_t *obj, bool enable)
Definition: sc_process_profiler_control_simics_adapter.h:45
static void clear_data(conf_object_t *obj)
Definition: sc_process_profiler_control_simics_adapter.h:54
::uint64 total_number_of_calls(conf_object_t *obj)
Definition: sc_process_profiler_control_simics_adapter.h:51
Base class for mapping Simics interface to a C++ interface.
Definition: simics_adapter.h:45
DescriptionType
Definition: description_interface.h:23