16#ifndef SIMICS_SYSTEMC_SIMICS2SYSTEMC_SIGNAL_H
17#define SIMICS_SYSTEMC_SIMICS2SYSTEMC_SIGNAL_H
19#include <simics/cc-api.h>
29namespace simics2systemc {
41 validate_signal_level(
true);
45 validate_signal_level(
false);
51 void set_pin(sc_core::sc_in<bool> *target_pin,
bool initial_level,
52 const ConfObjectRef &obj);
53 void set_pin(sc_core::sc_inout<bool> *target_pin,
bool initial_level,
54 const ConfObjectRef &obj);
58 void update(
bool value);
59 void set_pin(
const char *target_pin_name,
bool initial_level,
60 const ConfObjectRef &obj);
61 void validate_signal_level(
bool raise);
62 virtual void create_gasket(sc_core::sc_module_name);
64 ConfObjectRef *simics_obj_;
70#if INTC_EXT && USE_SIMICS_CHECKPOINTING
76 void create_gasket(sc_core::sc_module_name)
override;
79using Signal = SignalSerializable;
Definition: internal_interface.h:25
Simics signal interface.
Definition: signal_interface.h:28
Interface to the SystemC simulation.
Definition: simulation_interface.h:27
Definition: gasket_interface.h:30
void init(iface::SimulationInterface *simulation, InternalInterface *internal)
SignalBase & operator=(const SignalBase &)=delete
GasketInterface * gasket()
friend class SignalSerializable
Definition: signal.h:33
void lower() override
Definition: signal.h:44
void set_pin(sc_core::sc_in< bool > *target_pin, bool initial_level, const ConfObjectRef &obj)
void set_pin(sc_core::sc_inout< bool > *target_pin, bool initial_level, const ConfObjectRef &obj)
SignalBase(const SignalBase &)=delete
void raise() override
Definition: signal.h:40
SignalBase Signal
Definition: signal.h:81