TLM-2.0  2.0.4
Accellera TLM-2.0 proof-of-concept library
tlm::tlm_generic_payload Class Reference

#include <tlm_core/tlm_2/tlm_generic_payload/tlm_gp.h>

Public Member Functions

 tlm_generic_payload ()
 
 tlm_generic_payload (tlm_mm_interface *mm)
 
void acquire ()
 
void release ()
 
int get_ref_count () const
 
void set_mm (tlm_mm_interface *mm)
 
bool has_mm () const
 
void reset ()
 
void deep_copy_from (const tlm_generic_payload &other)
 
void update_original_from (const tlm_generic_payload &other, bool use_byte_enable_on_read=true)
 
void update_extensions_from (const tlm_generic_payload &other)
 
void free_all_extensions ()
 
virtual ~tlm_generic_payload ()
 
bool is_read () const
 
void set_read ()
 
bool is_write () const
 
void set_write ()
 
tlm_command get_command () const
 
void set_command (const tlm_command command)
 
sc_dt::uint64 get_address () const
 
void set_address (const sc_dt::uint64 address)
 
unsigned char * get_data_ptr () const
 
void set_data_ptr (unsigned char *data)
 
unsigned int get_data_length () const
 
void set_data_length (const unsigned int length)
 
bool is_response_ok () const
 
bool is_response_error () const
 
tlm_response_status get_response_status () const
 
void set_response_status (const tlm_response_status response_status)
 
std::string get_response_string () const
 
unsigned int get_streaming_width () const
 
void set_streaming_width (const unsigned int streaming_width)
 
unsigned char * get_byte_enable_ptr () const
 
void set_byte_enable_ptr (unsigned char *byte_enable)
 
unsigned int get_byte_enable_length () const
 
void set_byte_enable_length (const unsigned int byte_enable_length)
 
void set_dmi_allowed (bool dmi_allowed)
 
bool is_dmi_allowed () const
 
tlm_gp_option get_gp_option () const
 
void set_gp_option (const tlm_gp_option gp_opt)
 
template<typename T >
T * set_extension (T *ext)
 
tlm_extension_baseset_extension (unsigned int index, tlm_extension_base *ext)
 
template<typename T >
T * set_auto_extension (T *ext)
 
tlm_extension_baseset_auto_extension (unsigned int index, tlm_extension_base *ext)
 
template<typename T >
void get_extension (T *&ext) const
 
template<typename T >
T * get_extension () const
 
tlm_extension_baseget_extension (unsigned int index) const
 
template<typename T >
void clear_extension (const T *ext)
 
template<typename T >
void clear_extension ()
 
template<typename T >
void release_extension (T *ext)
 
template<typename T >
void release_extension ()
 
void resize_extensions ()
 

Detailed Description

Definition at line 121 of file tlm_gp.h.

Constructor & Destructor Documentation

◆ tlm_generic_payload() [1/2]

tlm::tlm_generic_payload::tlm_generic_payload ( )

◆ tlm_generic_payload() [2/2]

tlm::tlm_generic_payload::tlm_generic_payload ( tlm_mm_interface mm)
explicit

◆ ~tlm_generic_payload()

virtual tlm::tlm_generic_payload::~tlm_generic_payload ( )
virtual

Member Function Documentation

◆ acquire()

void tlm::tlm_generic_payload::acquire ( )
inline

Definition at line 132 of file tlm_gp.h.

◆ clear_extension() [1/2]

template<typename T >
void tlm::tlm_generic_payload::clear_extension ( const T *  ext)
inline

Definition at line 349 of file tlm_gp.h.

◆ clear_extension() [2/2]

template<typename T >
void tlm::tlm_generic_payload::clear_extension ( )
inline

Definition at line 358 of file tlm_gp.h.

◆ deep_copy_from()

void tlm::tlm_generic_payload::deep_copy_from ( const tlm_generic_payload other)

◆ free_all_extensions()

void tlm::tlm_generic_payload::free_all_extensions ( )

◆ get_address()

sc_dt::uint64 tlm::tlm_generic_payload::get_address ( ) const
inline

Definition at line 188 of file tlm_gp.h.

◆ get_byte_enable_length()

unsigned int tlm::tlm_generic_payload::get_byte_enable_length ( ) const
inline

Definition at line 214 of file tlm_gp.h.

◆ get_byte_enable_ptr()

unsigned char* tlm::tlm_generic_payload::get_byte_enable_ptr ( ) const
inline

Definition at line 212 of file tlm_gp.h.

◆ get_command()

tlm_command tlm::tlm_generic_payload::get_command ( ) const
inline

Definition at line 184 of file tlm_gp.h.

◆ get_data_length()

unsigned int tlm::tlm_generic_payload::get_data_length ( ) const
inline

Definition at line 196 of file tlm_gp.h.

◆ get_data_ptr()

unsigned char* tlm::tlm_generic_payload::get_data_ptr ( ) const
inline

Definition at line 192 of file tlm_gp.h.

◆ get_extension() [1/3]

template<typename T >
void tlm::tlm_generic_payload::get_extension ( T *&  ext) const
inline

Definition at line 334 of file tlm_gp.h.

◆ get_extension() [2/3]

template<typename T >
T* tlm::tlm_generic_payload::get_extension ( ) const
inline

Definition at line 338 of file tlm_gp.h.

◆ get_extension() [3/3]

tlm_extension_base* tlm::tlm_generic_payload::get_extension ( unsigned int  index) const

◆ get_gp_option()

tlm_gp_option tlm::tlm_generic_payload::get_gp_option ( ) const
inline

Definition at line 223 of file tlm_gp.h.

◆ get_ref_count()

int tlm::tlm_generic_payload::get_ref_count ( ) const
inline

Definition at line 140 of file tlm_gp.h.

◆ get_response_status()

tlm_response_status tlm::tlm_generic_payload::get_response_status ( ) const
inline

Definition at line 202 of file tlm_gp.h.

◆ get_response_string()

std::string tlm::tlm_generic_payload::get_response_string ( ) const

◆ get_streaming_width()

unsigned int tlm::tlm_generic_payload::get_streaming_width ( ) const
inline

Definition at line 208 of file tlm_gp.h.

◆ has_mm()

bool tlm::tlm_generic_payload::has_mm ( ) const
inline

Definition at line 143 of file tlm_gp.h.

◆ is_dmi_allowed()

bool tlm::tlm_generic_payload::is_dmi_allowed ( ) const
inline

Definition at line 220 of file tlm_gp.h.

◆ is_read()

bool tlm::tlm_generic_payload::is_read ( ) const
inline

Definition at line 180 of file tlm_gp.h.

◆ is_response_error()

bool tlm::tlm_generic_payload::is_response_error ( ) const
inline

Definition at line 201 of file tlm_gp.h.

◆ is_response_ok()

bool tlm::tlm_generic_payload::is_response_ok ( ) const
inline

Definition at line 200 of file tlm_gp.h.

◆ is_write()

bool tlm::tlm_generic_payload::is_write ( ) const
inline

Definition at line 182 of file tlm_gp.h.

◆ release()

void tlm::tlm_generic_payload::release ( )
inline

Definition at line 134 of file tlm_gp.h.

◆ release_extension() [1/2]

template<typename T >
void tlm::tlm_generic_payload::release_extension ( T *  ext)
inline

Definition at line 366 of file tlm_gp.h.

◆ release_extension() [2/2]

template<typename T >
void tlm::tlm_generic_payload::release_extension ( )
inline

Definition at line 374 of file tlm_gp.h.

◆ reset()

void tlm::tlm_generic_payload::reset ( )

◆ resize_extensions()

void tlm::tlm_generic_payload::resize_extensions ( )

◆ set_address()

void tlm::tlm_generic_payload::set_address ( const sc_dt::uint64  address)
inline

Definition at line 189 of file tlm_gp.h.

◆ set_auto_extension() [1/2]

template<typename T >
T* tlm::tlm_generic_payload::set_auto_extension ( T *  ext)
inline

Definition at line 324 of file tlm_gp.h.

◆ set_auto_extension() [2/2]

tlm_extension_base* tlm::tlm_generic_payload::set_auto_extension ( unsigned int  index,
tlm_extension_base ext 
)

◆ set_byte_enable_length()

void tlm::tlm_generic_payload::set_byte_enable_length ( const unsigned int  byte_enable_length)
inline

Definition at line 215 of file tlm_gp.h.

◆ set_byte_enable_ptr()

void tlm::tlm_generic_payload::set_byte_enable_ptr ( unsigned char *  byte_enable)
inline

Definition at line 213 of file tlm_gp.h.

◆ set_command()

void tlm::tlm_generic_payload::set_command ( const tlm_command  command)
inline

Definition at line 185 of file tlm_gp.h.

◆ set_data_length()

void tlm::tlm_generic_payload::set_data_length ( const unsigned int  length)
inline

Definition at line 197 of file tlm_gp.h.

◆ set_data_ptr()

void tlm::tlm_generic_payload::set_data_ptr ( unsigned char *  data)
inline

Definition at line 193 of file tlm_gp.h.

◆ set_dmi_allowed()

void tlm::tlm_generic_payload::set_dmi_allowed ( bool  dmi_allowed)
inline

Definition at line 219 of file tlm_gp.h.

◆ set_extension() [1/2]

template<typename T >
T* tlm::tlm_generic_payload::set_extension ( T *  ext)
inline

Definition at line 313 of file tlm_gp.h.

◆ set_extension() [2/2]

tlm_extension_base* tlm::tlm_generic_payload::set_extension ( unsigned int  index,
tlm_extension_base ext 
)

◆ set_gp_option()

void tlm::tlm_generic_payload::set_gp_option ( const tlm_gp_option  gp_opt)
inline

Definition at line 224 of file tlm_gp.h.

◆ set_mm()

void tlm::tlm_generic_payload::set_mm ( tlm_mm_interface mm)
inline

Definition at line 142 of file tlm_gp.h.

◆ set_read()

void tlm::tlm_generic_payload::set_read ( )
inline

Definition at line 181 of file tlm_gp.h.

◆ set_response_status()

void tlm::tlm_generic_payload::set_response_status ( const tlm_response_status  response_status)
inline

Definition at line 203 of file tlm_gp.h.

◆ set_streaming_width()

void tlm::tlm_generic_payload::set_streaming_width ( const unsigned int  streaming_width)
inline

Definition at line 209 of file tlm_gp.h.

◆ set_write()

void tlm::tlm_generic_payload::set_write ( )
inline

Definition at line 183 of file tlm_gp.h.

◆ update_extensions_from()

void tlm::tlm_generic_payload::update_extensions_from ( const tlm_generic_payload other)

◆ update_original_from()

void tlm::tlm_generic_payload::update_original_from ( const tlm_generic_payload other,
bool  use_byte_enable_on_read = true 
)

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