16#ifndef SIMICS_SYSTEMC_IFACE_INSTRUMENTATION_PROVIDER_CONTROLLER_SIMICS_ADAPTER_H
17#define SIMICS_SYSTEMC_IFACE_INSTRUMENTATION_PROVIDER_CONTROLLER_SIMICS_ADAPTER_H
21#include <systemc-provider-interfaces.h>
32namespace instrumentation {
34template<
typename TBase,
typename TInterface = Prov
iderControllerInterface>
40 SC_PROVIDER_CONTROLLER_INTERFACE, init_iface()) {
44 static bool insert(conf_object_t *obj, conf_object_t *conn,
int pos) {
45 return adapter<TBase, TInterface>(obj)->insert(
static_cast<
47 SIM_object_data(conn)), pos);
49 static void remove(conf_object_t *obj, conf_object_t *conn) {
50 adapter<TBase, TInterface>(obj)->remove(
static_cast<
52 SIM_object_data(conn)));
56 std::vector<std::string> description(conf_object_t *obj,
58 return descriptionBase<TBase, TInterface>(obj, type);
60 sc_provider_controller_interface_t init_iface() {
61 sc_provider_controller_interface_t iface = {};
Base class for mapping Simics interface to a C++ interface.
Definition: simics_adapter.h:47
Definition: provider_controller_simics_adapter.h:36
ProviderControllerSimicsAdapter()
Definition: provider_controller_simics_adapter.h:38
static void remove(conf_object_t *obj, conf_object_t *conn)
Definition: provider_controller_simics_adapter.h:49
static bool insert(conf_object_t *obj, conf_object_t *conn, int pos)
Definition: provider_controller_simics_adapter.h:44
DescriptionType
Definition: description_interface.h:25
Definition: pci_bus_interface.h:24