Logo SoCRocket

Transaction-Level Modeling Framework for Space Applications

Public Member Functions | List of all members
scireg_ns::scireg_region_if Class Reference

#include <scireg.h>

Inheritance diagram for scireg_ns::scireg_region_if:
Collaboration diagram for scireg_ns::scireg_region_if:

Public Member Functions

 scireg_region_if ()
 
virtual ~scireg_region_if ()
 
virtual scireg_response scireg_get_region_type (scireg_region_type &t) const
 Get the region_type of this region: More...
 
virtual scireg_response scireg_read (vector_byte &v, sc_dt::uint64 size, sc_dt::uint64 offset=0) const
 Read a vector of "size" bytes at given offset in this region: More...
 
virtual scireg_response scireg_write (const vector_byte &v, sc_dt::uint64 size, sc_dt::uint64 offset=0)
 Write a vector of "size" bytes at given offset in this region: More...
 
virtual scireg_response scireg_get_bit_attributes (vector_byte &v, scireg_bit_attributes_type t, sc_dt::uint64 size, sc_dt::uint64 offset=0) const
 Get bit attributes of type "t" into "v". "size" represents number of bytes returned, offset can be used to constrain the range. More...
 
virtual scireg_response scireg_get_string_attribute (const char *&s, scireg_string_attribute_type t) const
 Get string attributes of type "t" associated with this region. The returned string is assigned to "s". More...
 
virtual sc_dt::uint64 scireg_get_bit_width () const
 Get bit width and byte width of this region. More...
 
virtual sc_dt::uint64 scireg_get_byte_width () const
 
virtual sc_dt::uint64 scireg_get_low_pos () const
 If this region is a register field, these functions return low bit and high bit positions: More...
 
virtual sc_dt::uint64 scireg_get_high_pos () const
 
virtual scireg_response scireg_get_child_regions (std::vector< scireg_mapped_region > &mapped_regions, sc_dt::uint64 size=sc_dt::uint64(-1), sc_dt::uint64 offset=0) const
 
virtual scireg_response scireg_get_parent_regions (std::vector< scireg_region_if * > &v) const
 Get parent regions of this region. More...
 
virtual scireg_response scireg_add_callback (scireg_callback &cb)
 Add/Delete Callback objects associated with this region. More...
 
virtual scireg_response scireg_remove_callback (scireg_callback &cb)
 
virtual scireg_response scireg_get_target_sockets (std::vector< sc_core::sc_object * > &v) const
 Get SC TLM2 Target socket associated with this region. More...
 
virtual scireg_response scireg_get_parent_modules (std::vector< sc_core::sc_module * > &v) const
 Get parent SystemC modules associated with this region. More...
 
virtual scireg_response scireg_get_value_info (std::vector< scireg_value_info > &v) const
 Get a vector of value_info objects for this region. More...
 
virtual scireg_response scireg_get_dmi_granted (bool &granted, sc_dt::uint64 size, sc_dt::uint64 offset=0) const
 Query to see if DMI access has been granted to this region. "size" and offset can be used to constrain the range. More...
 

Constructor & Destructor Documentation

scireg_ns::scireg_region_if::scireg_region_if ( )
inline

References scireg_ns::scireg_tool_registry::add_region().

Referenced by sc_register_base::scireg_get_child_regions(), and sc_register_bank< unsigned int, unsigned int >::scireg_get_child_regions().

Here is the call graph for this function:

virtual scireg_ns::scireg_region_if::~scireg_region_if ( )
inlinevirtual

References scireg_ns::scireg_tool_registry::remove_region().

Here is the call graph for this function:

Member Function Documentation

virtual scireg_response scireg_ns::scireg_region_if::scireg_add_callback ( scireg_callback cb)
inlinevirtual
virtual scireg_response scireg_ns::scireg_region_if::scireg_get_bit_attributes ( vector_byte v,
scireg_bit_attributes_type  t,
sc_dt::uint64  size,
sc_dt::uint64  offset = 0 
) const
inlinevirtual

Get bit attributes of type "t" into "v". "size" represents number of bytes returned, offset can be used to constrain the range.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual sc_dt::uint64 scireg_ns::scireg_region_if::scireg_get_bit_width ( ) const
inlinevirtual
virtual sc_dt::uint64 scireg_ns::scireg_region_if::scireg_get_byte_width ( ) const
inlinevirtual

Reimplemented in sc_register_bank_base.

References scireg_get_bit_width().

Here is the call graph for this function:

virtual scireg_response scireg_ns::scireg_region_if::scireg_get_child_regions ( std::vector< scireg_mapped_region > &  mapped_regions,
sc_dt::uint64  size = sc_dt::uint64(-1),
sc_dt::uint64  offset = 0 
) const
inlinevirtual

Get child regions mapped into this region, by returning a mapped region object representing each mapping. The size and offset parameters can be used to constrain the range of the search

Reimplemented in sc_register_bank< ADDR_TYPE, DATA_TYPE >, sc_register_bank< unsigned int, unsigned int >, and sc_register_base.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual scireg_response scireg_ns::scireg_region_if::scireg_get_dmi_granted ( bool granted,
sc_dt::uint64  size,
sc_dt::uint64  offset = 0 
) const
inlinevirtual

Query to see if DMI access has been granted to this region. "size" and offset can be used to constrain the range.

Reimplemented in BaseMemory.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual sc_dt::uint64 scireg_ns::scireg_region_if::scireg_get_high_pos ( ) const
inlinevirtual

Reimplemented in sc_register_field_base, and BaseMemory.

virtual sc_dt::uint64 scireg_ns::scireg_region_if::scireg_get_low_pos ( ) const
inlinevirtual

If this region is a register field, these functions return low bit and high bit positions:

Reimplemented in sc_register_field_base, and BaseMemory.

virtual scireg_response scireg_ns::scireg_region_if::scireg_get_parent_modules ( std::vector< sc_core::sc_module * > &  v) const
inlinevirtual

Get parent SystemC modules associated with this region.

Reimplemented in sc_register_bank_base, and sc_register_base.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual scireg_response scireg_ns::scireg_region_if::scireg_get_parent_regions ( std::vector< scireg_region_if * > &  v) const
inlinevirtual

Get parent regions of this region.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual scireg_response scireg_ns::scireg_region_if::scireg_get_region_type ( scireg_region_type t) const
inlinevirtual

Get the region_type of this region:

Reimplemented in sc_register_bank_base, sc_register_base, sc_register_field_base, and BaseMemory.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual scireg_response scireg_ns::scireg_region_if::scireg_get_string_attribute ( const char *&  s,
scireg_string_attribute_type  t 
) const
inlinevirtual

Get string attributes of type "t" associated with this region. The returned string is assigned to "s".

Reimplemented in sc_register_bank_base, sc_register_base, and sc_register_field_base.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual scireg_response scireg_ns::scireg_region_if::scireg_get_target_sockets ( std::vector< sc_core::sc_object * > &  v) const
inlinevirtual

Get SC TLM2 Target socket associated with this region.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual scireg_response scireg_ns::scireg_region_if::scireg_get_value_info ( std::vector< scireg_value_info > &  v) const
inlinevirtual

Get a vector of value_info objects for this region.

References scireg_ns::SCIREG_UNSUPPORTED.

virtual scireg_response scireg_ns::scireg_region_if::scireg_read ( vector_byte v,
sc_dt::uint64  size,
sc_dt::uint64  offset = 0 
) const
inlinevirtual
virtual scireg_response scireg_ns::scireg_region_if::scireg_remove_callback ( scireg_callback cb)
inlinevirtual
virtual scireg_response scireg_ns::scireg_region_if::scireg_write ( const vector_byte v,
sc_dt::uint64  size,
sc_dt::uint64  offset = 0 
)
inlinevirtual

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