scc  2022.4.0
SystemC components library
scc::resource_access_if Class Referenceabstract

interface defining access to a resource e.g. a register More...

#include <resource_access_if.h>

Inheritance diagram for scc::resource_access_if:

Public Member Functions

virtual std::size_t size () const =0
 return the size of the resource More...
 
virtual void reset ()=0
 reset the resource
 
virtual bool write (const uint8_t *data, std::size_t length, uint64_t offset, sc_core::sc_time &d)=0
 
bool write (const uint8_t *data, std::size_t length, uint64_t offset=0)
 
virtual bool read (uint8_t *data, std::size_t length, uint64_t offset, sc_core::sc_time &d) const =0
 
bool read (uint8_t *data, std::size_t length, uint64_t offset=0) const
 
virtual bool write_dbg (const uint8_t *data, std::size_t length, uint64_t offset=0)=0
 debug write to the resource More...
 
virtual bool read_dbg (uint8_t *data, std::size_t length, uint64_t offset=0) const =0
 debug read the data from the resource More...
 

Detailed Description

interface defining access to a resource e.g. a register

Definition at line 30 of file resource_access_if.h.

Member Function Documentation

◆ read_dbg()

bool scc::resource_access_if::read_dbg ( uint8_t *  data,
std::size_t  length,
uint64_t  offset = 0 
) const
pure virtual

debug read the data from the resource

Parameters
databuffer to read the data into
lengthlength of data to read
offsetoffset of the data to read
Returns
true it the access is successful

Implemented in scc::bitfield_register< datatype_t >.

◆ size()

std::size_t scc::resource_access_if::size ( ) const
pure virtual

return the size of the resource

Returns
the size

Implemented in scc::impl::sc_register< DATATYPE >, and scc::bitfield_register< datatype_t >.

◆ write_dbg()

bool scc::resource_access_if::write_dbg ( const uint8_t *  data,
std::size_t  length,
uint64_t  offset = 0 
)
pure virtual

debug write to the resource

Parameters
datato write
lengthof data to write
offsetof the data to write
Returns
true it the access is successful

Implemented in scc::bitfield_register< datatype_t >.


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