C++ Device API Reference Manual
Reference documentation for the Simics C++ Device API.
 
Loading...
Searching...
No Matches
simics::FieldInterface Class Referenceabstract

#include <field-interface.h>

Inheritance diagram for simics::FieldInterface:
simics::ValueAccessorInterface simics::ValueMutatorInterface simics::Field simics::ClearOnReadField simics::ConstantField simics::DesignLimitationField simics::IgnoreWriteField simics::Read0Field simics::ReadConstantField simics::ReadOnlyField simics::ReadUnimplField simics::RegisterField< TField, Args > simics::ReservedField simics::SilentUnimplField simics::UndocumentedField simics::UnimplField simics::Write0OnlyField simics::Write1ClearsField simics::Write1OnlyField simics::WriteOnceField simics::WriteUnimplField

Public Member Functions

virtual ~FieldInterface ()=default
 
virtual std::string_view name () const =0
 Get the name of the field without level delimiters.
 
virtual const std::string & description () const =0
 Get the description of the field.
 
virtual unsigned number_of_bits () const =0
 
virtual void init (std::string_view desc, const bits_type &bits, int8_t offset)=0
 Initialize the field with a description, size in bits and an offset.
 
virtual RegisterInterfaceparent () const =0
 
- Public Member Functions inherited from simics::ValueAccessorInterface
virtual ~ValueAccessorInterface ()=default
 
virtual uint64_t get () const =0
 
virtual uint64_t read (uint64_t enabled_bits)=0
 
- Public Member Functions inherited from simics::ValueMutatorInterface
virtual ~ValueMutatorInterface ()=default
 
virtual void set (uint64_t value)=0
 
virtual void write (uint64_t value, uint64_t enabled_bits)=0
 

Constructor & Destructor Documentation

◆ ~FieldInterface()

virtual simics::FieldInterface::~FieldInterface ( )
virtualdefault

Member Function Documentation

◆ description()

virtual const std::string & simics::FieldInterface::description ( ) const
pure virtual

Get the description of the field.

Returns
A reference to the string containing the field description.

Implemented in simics::Field.

◆ init()

virtual void simics::FieldInterface::init ( std::string_view  desc,
const bits_type bits,
int8_t  offset 
)
pure virtual

Initialize the field with a description, size in bits and an offset.

Typically called after the field is instantiated.

Parameters
offsetis the offset of the first bit in the containing register

Implemented in simics::ConstantField, and simics::Field.

◆ name()

virtual std::string_view simics::FieldInterface::name ( ) const
pure virtual

Get the name of the field without level delimiters.

Returns
A string view representing the field name only.

Implemented in simics::Field.

◆ number_of_bits()

virtual unsigned simics::FieldInterface::number_of_bits ( ) const
pure virtual
Returns
the number of bits for this field

Implemented in simics::Field.

◆ parent()

virtual RegisterInterface * simics::FieldInterface::parent ( ) const
pure virtual
Returns
the parent register interface

Implemented in simics::Field.


The documentation for this class was generated from the following file: