gem5 v24.0.0.0
Loading...
Searching...
No Matches
gem5::RegisterBank< BankByteOrder >::RegisterBase Class Referenceabstract

#include <reg_bank.hh>

Inheritance diagram for gem5::RegisterBank< BankByteOrder >::RegisterBase:
gem5::RegisterBankBase::RegisterBaseBase gem5::RegisterBank< BankByteOrder >::Register< BackingType > gem5::RegisterBank< BankByteOrder >::Register< Data, RegByteOrder > gem5::RegisterBank< BankByteOrder >::RegisterBuf gem5::RegisterBank< BankByteOrder >::RegisterRoFill gem5::RegisterBank< BankByteOrder >::RegisterLBuf< 12 > gem5::RegisterBank< BankByteOrder >::RegisterLBuf< 0x80 > gem5::RegisterBank< BankByteOrder >::RegisterLBuf< 0x100 > gem5::RegisterBank< BankByteOrder >::RegisterLBuf< BufBytes > gem5::RegisterBank< BankByteOrder >::RegisterRao gem5::RegisterBank< BankByteOrder >::RegisterRaz

Public Member Functions

constexpr RegisterBase (const std::string &new_name, size_t new_size)
 
virtual ~RegisterBase ()
 
virtual const std::string & name () const
 
size_t size () const
 
virtual void read (void *buf)=0
 
virtual void read (void *buf, off_t offset, size_t bytes)=0
 
virtual void write (const void *buf)=0
 
virtual void write (const void *buf, off_t offset, size_t bytes)=0
 
virtual void serialize (std::ostream &os) const =0
 
virtual bool unserialize (const std::string &s)=0
 
virtual void reset ()=0
 

Protected Attributes

const std::string _name
 
size_t _size = 0
 

Detailed Description

template<ByteOrder BankByteOrder>
class gem5::RegisterBank< BankByteOrder >::RegisterBase

Definition at line 375 of file reg_bank.hh.

Constructor & Destructor Documentation

◆ RegisterBase()

template<ByteOrder BankByteOrder>
gem5::RegisterBank< BankByteOrder >::RegisterBase::RegisterBase ( const std::string & new_name,
size_t new_size )
inlineconstexpr

Definition at line 382 of file reg_bank.hh.

◆ ~RegisterBase()

template<ByteOrder BankByteOrder>
virtual gem5::RegisterBank< BankByteOrder >::RegisterBase::~RegisterBase ( )
inlinevirtual

Definition at line 385 of file reg_bank.hh.

Member Function Documentation

◆ name()

template<ByteOrder BankByteOrder>
virtual const std::string & gem5::RegisterBank< BankByteOrder >::RegisterBase::name ( ) const
inlinevirtual

◆ read() [1/2]

◆ read() [2/2]

template<ByteOrder BankByteOrder>
virtual void gem5::RegisterBank< BankByteOrder >::RegisterBase::read ( void * buf,
off_t offset,
size_t bytes )
pure virtual

◆ reset()

◆ serialize()

◆ size()

◆ unserialize()

◆ write() [1/2]

◆ write() [2/2]

template<ByteOrder BankByteOrder>
virtual void gem5::RegisterBank< BankByteOrder >::RegisterBase::write ( const void * buf,
off_t offset,
size_t bytes )
pure virtual

Member Data Documentation

◆ _name

template<ByteOrder BankByteOrder>
const std::string gem5::RegisterBank< BankByteOrder >::RegisterBase::_name
protected

◆ _size

template<ByteOrder BankByteOrder>
size_t gem5::RegisterBank< BankByteOrder >::RegisterBase::_size = 0
protected

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

Generated on Tue Jun 18 2024 16:24:13 for gem5 by doxygen 1.11.0