14#ifndef SIMICS_SYSTEMC_IFACE_SERIAL_DEVICE_SIMICS_ADAPTER_H
15#define SIMICS_SYSTEMC_IFACE_SERIAL_DEVICE_SIMICS_ADAPTER_H
17#include <simics/devs/serial-device.h>
28template<
typename TBase,
29 typename TInterface = SerialDeviceInterface>
35 SERIAL_DEVICE_INTERFACE, init_iface()) {
39 static int write(conf_object_t *obj,
int value) {
40 return adapter<TBase, TInterface>(obj)->write(value);
43 adapter<TBase, TInterface>(obj)->receive_ready();
47 std::vector<std::string> description(conf_object_t *obj,
49 return descriptionBase<TBase, TInterface>(obj, type);
51 serial_device_interface_t init_iface() {
52 serial_device_interface_t iface = {};
Definition: serial_device_simics_adapter.h:31
SerialDeviceSimicsAdapter()
Definition: serial_device_simics_adapter.h:33
static void receive_ready(conf_object_t *obj)
Definition: serial_device_simics_adapter.h:42
static int write(conf_object_t *obj, int value)
Definition: serial_device_simics_adapter.h:39
Base class for mapping Simics interface to a C++ interface.
Definition: simics_adapter.h:45
DescriptionType
Definition: description_interface.h:23