libmicroemu 0.2.0
ARM Microcontroller Emulator Library
Loading...
Searching...
No Matches
libmicroemu::internal::MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals > Class Template Reference

Public Types

using ExcTrig = TExceptionTrigger
 

Public Member Functions

 MemMapRw ()=default
 Constructor.
 
virtual ~MemMapRw ()=default
 Destructor.
 
 MemMapRw (const MemMapRw &r_src)=default
 Copy constructor for MemMapRw.
 
MemMapRwoperator= (const MemMapRw &r_src)=default
 Copy assignment operator for MemMapRw.
 
 MemMapRw (MemMapRw &&r_src)=default
 Move constructor for MemMapRw.
 
MemMapRwoperator= (MemMapRw &&r_src)=default
 Move assignment operator for MemMapRw.
 
template<typename T>
ReadResult< T > Read (TCpuAccessor &cpua, me_adr_t vadr) const
 
template<typename T>
WriteResult< T > Write (TCpuAccessor &cpua, me_adr_t vadr, const T &value) const
 
bool IsVAdrInRange (me_adr_t vadr) const
 

Static Public Member Functions

template<typename T, typename First, typename... Rest>
static ReadResult< T > ReadRegisters (TCpuAccessor &cpua, const u32 &padr)
 
template<typename T>
static ReadResult< T > ReadRegisters (TCpuAccessor &cpua, const u32 &padr)
 
template<typename T, typename First, typename... Rest>
static WriteResult< T > WriteRegisters (TCpuAccessor &cpua, const u32 &padr, const T &value)
 
template<typename T>
static WriteResult< T > WriteRegisters (TCpuAccessor &cpua, const u32 &padr, const T &value)
 

Static Public Attributes

static constexpr bool kReadOnly = false
 

Constructor & Destructor Documentation

◆ MemMapRw() [1/2]

template<unsigned Id, unsigned VadrOffset, unsigned VadrRange, typename TCpuAccessor, typename TExceptionTrigger, typename TLogger, typename... TPeripherals>
libmicroemu::internal::MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals >::MemMapRw ( const MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals > & r_src)
default

Copy constructor for MemMapRw.

Parameters
r_srcthe object to be copied

◆ MemMapRw() [2/2]

template<unsigned Id, unsigned VadrOffset, unsigned VadrRange, typename TCpuAccessor, typename TExceptionTrigger, typename TLogger, typename... TPeripherals>
libmicroemu::internal::MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals >::MemMapRw ( MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals > && r_src)
default

Move constructor for MemMapRw.

Parameters
r_srcthe object to be moved

Member Function Documentation

◆ operator=() [1/2]

template<unsigned Id, unsigned VadrOffset, unsigned VadrRange, typename TCpuAccessor, typename TExceptionTrigger, typename TLogger, typename... TPeripherals>
MemMapRw & libmicroemu::internal::MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals >::operator= ( const MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals > & r_src)
default

Copy assignment operator for MemMapRw.

Parameters
r_srcthe object to be copied

◆ operator=() [2/2]

template<unsigned Id, unsigned VadrOffset, unsigned VadrRange, typename TCpuAccessor, typename TExceptionTrigger, typename TLogger, typename... TPeripherals>
MemMapRw & libmicroemu::internal::MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals >::operator= ( MemMapRw< Id, VadrOffset, VadrRange, TCpuAccessor, TExceptionTrigger, TLogger, TPeripherals > && r_src)
default

Move assignment operator for MemMapRw.

Parameters
r_srcthe object to be moved

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