16#ifndef SIMICS_SYSTEMC_IFACE_SC_PROCESS_PROFILER_CONTROL_SIMICS_ADAPTER_H
17#define SIMICS_SYSTEMC_IFACE_SC_PROCESS_PROFILER_CONTROL_SIMICS_ADAPTER_H
22#include <systemc-interfaces.h>
32template<
typename TBase,
33 typename TInterface = ScProcessProfilerControlInterface>
35 :
public SimicsAdapter<sc_process_profiler_control_interface_t> {
39 SC_PROCESS_PROFILER_CONTROL_INTERFACE,
45 return adapter<TBase, TInterface>(obj)->is_enabled();
48 return adapter<TBase, TInterface>(obj)->set_enabled(enable);
51 return adapter<TBase, TInterface>(obj)->total_time();
54 return adapter<TBase, TInterface>(obj)->total_number_of_calls();
57 return adapter<TBase, TInterface>(obj)->clear_data();
61 std::vector<std::string> description(conf_object_t *obj,
63 return descriptionBase<TBase, TInterface>(obj, type);
65 sc_process_profiler_control_interface_t init_iface() {
66 sc_process_profiler_control_interface_t iface = {};
Definition: sc_process_profiler_control_simics_adapter.h:35
ScProcessProfilerControlSimicsAdapter()
Definition: sc_process_profiler_control_simics_adapter.h:37
::uint64 total_time(conf_object_t *obj)
Definition: sc_process_profiler_control_simics_adapter.h:50
static bool is_enabled(conf_object_t *obj)
Definition: sc_process_profiler_control_simics_adapter.h:44
static void set_enabled(conf_object_t *obj, bool enable)
Definition: sc_process_profiler_control_simics_adapter.h:47
static void clear_data(conf_object_t *obj)
Definition: sc_process_profiler_control_simics_adapter.h:56
::uint64 total_number_of_calls(conf_object_t *obj)
Definition: sc_process_profiler_control_simics_adapter.h:53
Base class for mapping Simics interface to a C++ interface.
Definition: simics_adapter.h:47
DescriptionType
Definition: description_interface.h:25
Definition: pci_bus_interface.h:24