gem5  v22.1.0.0
Public Types | Public Member Functions | Private Attributes | List of all members
gem5::MemBackdoor Class Reference

#include <backdoor.hh>

Public Types

enum  Flags { NoAccess = 0x0 , Readable = 0x1 , Writeable = 0x2 }
 
typedef std::function< void(const MemBackdoor &backdoor)> CbFunction
 

Public Member Functions

const AddrRangerange () const
 
void range (const AddrRange &r)
 
uint8_t * ptr () const
 
void ptr (uint8_t *p)
 
bool readable () const
 
void readable (bool r)
 
bool writeable () const
 
void writeable (bool w)
 
Flags flags () const
 
void flags (Flags f)
 
 MemBackdoor (AddrRange r, uint8_t *p, Flags flags)
 
 MemBackdoor ()
 
void addInvalidationCallback (CbFunction func)
 
void invalidate ()
 

Private Attributes

CallbackQueue invalidationCallbacks
 
AddrRange _range
 
uint8_t * _ptr
 
Flags _flags
 

Detailed Description

Definition at line 41 of file backdoor.hh.

Member Typedef Documentation

◆ CbFunction

typedef std::function<void(const MemBackdoor &backdoor)> gem5::MemBackdoor::CbFunction

Definition at line 46 of file backdoor.hh.

Member Enumeration Documentation

◆ Flags

Enumerator
NoAccess 
Readable 
Writeable 

Definition at line 49 of file backdoor.hh.

Constructor & Destructor Documentation

◆ MemBackdoor() [1/2]

gem5::MemBackdoor::MemBackdoor ( AddrRange  r,
uint8_t *  p,
Flags  flags 
)
inline

Definition at line 92 of file backdoor.hh.

◆ MemBackdoor() [2/2]

gem5::MemBackdoor::MemBackdoor ( )
inline

Definition at line 96 of file backdoor.hh.

Member Function Documentation

◆ addInvalidationCallback()

void gem5::MemBackdoor::addInvalidationCallback ( CbFunction  func)
inline

◆ flags() [1/2]

Flags gem5::MemBackdoor::flags ( ) const
inline

Definition at line 89 of file backdoor.hh.

References _flags.

◆ flags() [2/2]

void gem5::MemBackdoor::flags ( Flags  f)
inline

Definition at line 90 of file backdoor.hh.

References _flags, and gem5::VegaISA::f.

◆ invalidate()

void gem5::MemBackdoor::invalidate ( )
inline

◆ ptr() [1/2]

uint8_t* gem5::MemBackdoor::ptr ( ) const
inline

◆ ptr() [2/2]

void gem5::MemBackdoor::ptr ( uint8_t *  p)
inline

Definition at line 63 of file backdoor.hh.

References _ptr, and gem5::VegaISA::p.

◆ range() [1/2]

const AddrRange& gem5::MemBackdoor::range ( ) const
inline

◆ range() [2/2]

void gem5::MemBackdoor::range ( const AddrRange r)
inline

Definition at line 59 of file backdoor.hh.

References _range, and gem5::VegaISA::r.

◆ readable() [1/2]

bool gem5::MemBackdoor::readable ( ) const
inline

Definition at line 69 of file backdoor.hh.

References _flags, and Readable.

Referenced by sc_gem5::TlmToGem5Bridge< BITWIDTH >::get_direct_mem_ptr().

◆ readable() [2/2]

void gem5::MemBackdoor::readable ( bool  r)
inline

Definition at line 71 of file backdoor.hh.

References _flags, gem5::VegaISA::r, and Readable.

◆ writeable() [1/2]

bool gem5::MemBackdoor::writeable ( ) const
inline

Definition at line 79 of file backdoor.hh.

References _flags, and Writeable.

Referenced by sc_gem5::TlmToGem5Bridge< BITWIDTH >::get_direct_mem_ptr().

◆ writeable() [2/2]

void gem5::MemBackdoor::writeable ( bool  w)
inline

Definition at line 81 of file backdoor.hh.

References _flags, gem5::VegaISA::w, and Writeable.

Member Data Documentation

◆ _flags

Flags gem5::MemBackdoor::_flags
private

Definition at line 124 of file backdoor.hh.

Referenced by flags(), readable(), and writeable().

◆ _ptr

uint8_t* gem5::MemBackdoor::_ptr
private

Definition at line 123 of file backdoor.hh.

Referenced by ptr().

◆ _range

AddrRange gem5::MemBackdoor::_range
private

Definition at line 122 of file backdoor.hh.

Referenced by range().

◆ invalidationCallbacks

CallbackQueue gem5::MemBackdoor::invalidationCallbacks
private

Definition at line 120 of file backdoor.hh.

Referenced by addInvalidationCallback(), and invalidate().


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

Generated on Wed Dec 21 2022 10:23:26 for gem5 by doxygen 1.9.1