16#ifndef SIMICS_IFACE_REGISTER_INTERFACE_H
17#define SIMICS_IFACE_REGISTER_INTERFACE_H
24#include "../conf-object.h"
27#include "../type/field-type.h"
28#include "../type/register-type.h"
32class MappableConfObject;
41 virtual std::string_view
name()
const = 0;
62 uint64_t init_val) = 0;
Definition: bank-interface.h:45
Represents Simics C type conf_object_t.
Definition: conf-object.h:37
Definition: mappable-conf-object.h:131
Definition: register-interface.h:36
virtual const std::string & description() const =0
virtual const std::string & hierarchical_name() const =0
virtual ~RegisterInterface()=default
virtual std::vector< field_t > fields_info() const =0
virtual std::string_view name() const =0
virtual bool is_mapped() const =0
virtual void init(std::string_view desc, unsigned number_of_bytes, uint64_t init_val)=0
virtual void set_byte_pointers(const register_memory_t &byte_pointers)=0
virtual ConfObjectRef bank_obj_ref() const =0
virtual bool is_read_only() const =0
virtual BankInterface * parent() const =0
virtual void parse_field(const field_t &f)=0
virtual MappableConfObject * dev_obj() const =0
virtual unsigned number_of_bytes() const =0
Definition: value-accessor-interface.h:24
Definition: value-mutator-interface.h:24
Definition: attr-value.h:23
std::tuple< Name, Description, Offset, BitWidth > field_t
Definition: field-type.h:38
std::vector< uint8_t * > register_memory_t
Definition: register-type.h:52