14#ifndef SIMICS_SYSTEMC_IFACE_I2C_SLAVE_V2_EXTENSION_H
15#define SIMICS_SYSTEMC_IFACE_I2C_SLAVE_V2_EXTENSION_H
28 I2cSlaveV2Interface> {
50 void start(uint8_t address)
override {
59 void write(uint8_t value)
override {
Base class for TLM2 extension, responsible for marshal/unmarshal of a Simics interface.
Definition: extension.h:38
types::AnyType method_return_error_
Definition: extension.h:118
types::AnyType method_return_
Definition: extension.h:117
void send()
Definition: extension.h:50
std::vector< types::AnyType > method_input_
Definition: extension.h:116
types::AnyType method_
Definition: extension.h:115
Definition: i2c_slave_v2_extension.h:28
void write(uint8_t value) override
Definition: i2c_slave_v2_extension.h:59
std::vector< uint8_t > addresses() override
Definition: i2c_slave_v2_extension.h:68
void call(I2cSlaveV2Interface *device) override
Definition: i2c_slave_v2_extension.h:30
void start(uint8_t address) override
Definition: i2c_slave_v2_extension.h:50
void read() override
Definition: i2c_slave_v2_extension.h:55
void stop() override
Definition: i2c_slave_v2_extension.h:64
Definition: i2c_slave_v2_interface.h:24
virtual std::vector< uint8_t > addresses()=0
virtual void write(uint8_t value)=0
virtual void start(uint8_t address)=0
T value()
Definition: any_type.h:87