16#ifndef SIMICS_SYSTEMC_IFACE_SC_VECTOR_SIMICS_ADAPTER_H
17#define SIMICS_SYSTEMC_IFACE_SC_VECTOR_SIMICS_ADAPTER_H
22#include <systemc-interfaces.h>
32template<
typename TBase,
typename TInterface = ScVectorInterface>
36 SC_VECTOR_INTERFACE, init_iface()) {
46 static attr_value_t stl2simics(std::vector<conf_object_t *> proxies) {
47 attr_value_t list = SIM_alloc_attr_list(proxies.size());
48 for (
unsigned i = 0; i < proxies.size(); ++i)
49 SIM_attr_list_set_item(&list, i, SIM_make_attr_object(proxies[i]));
53 std::vector<std::string> description(conf_object_t *obj,
55 return descriptionBase<TBase, TInterface>(obj, type);
57 sc_vector_interface_t init_iface() {
58 sc_vector_interface_t iface = {};
Definition: sc_vector_simics_adapter.h:33
ScVectorSimicsAdapter()
Definition: sc_vector_simics_adapter.h:35
static attr_value_t get_elements(conf_object_t *obj)
Definition: sc_vector_simics_adapter.h:40
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