#include <tlm_gp.h>
Public Member Functions | |
tlm_generic_payload () | |
tlm_generic_payload (tlm_mm_interface *mm) | |
void | acquire () |
void | release () |
int | get_ref_count () |
void | set_mm (tlm_mm_interface *mm) |
bool | has_mm () |
void | reset () |
void | deep_copy_from (const tlm_generic_payload &other) |
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 |
template<typename T> | |
T * | set_extension (T *ext) |
tlm_extension_base * | set_extension (unsigned int index, tlm_extension_base *ext) |
template<typename T> | |
T * | set_auto_extension (T *ext) |
tlm_extension_base * | set_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_base * | get_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 () |
Private Member Functions | |
tlm_generic_payload (const tlm_generic_payload &x) | |
tlm_generic_payload & | operator= (const tlm_generic_payload &x) |
void | clear_extension (unsigned int index) |
void | release_extension (unsigned int index) |
Private Attributes | |
sc_dt::uint64 | m_address |
tlm_command | m_command |
unsigned char * | m_data |
unsigned int | m_length |
tlm_response_status | m_response_status |
bool | m_dmi |
unsigned char * | m_byte_enable |
unsigned int | m_byte_enable_length |
unsigned int | m_streaming_width |
tlm_array < tlm_extension_base * > | m_extensions |
tlm_mm_interface * | m_mm |
unsigned int | m_ref_count |
Definition at line 108 of file tlm_gp.h.
tlm::tlm_generic_payload::tlm_generic_payload | ( | tlm_mm_interface * | mm | ) | [inline, explicit] |
tlm::tlm_generic_payload::tlm_generic_payload | ( | const tlm_generic_payload & | x | ) | [inline, private] |
Definition at line 163 of file tlm_gp.h.
References get_extension(), and m_extensions.
virtual tlm::tlm_generic_payload::~tlm_generic_payload | ( | ) | [inline, virtual] |
void tlm::tlm_generic_payload::acquire | ( | ) | [inline] |
void tlm::tlm_generic_payload::release | ( | ) | [inline] |
Definition at line 149 of file tlm_gp.h.
References tlm::tlm_mm_interface::free(), m_mm, and m_ref_count.
int tlm::tlm_generic_payload::get_ref_count | ( | ) | [inline] |
void tlm::tlm_generic_payload::set_mm | ( | tlm_mm_interface * | mm | ) | [inline] |
bool tlm::tlm_generic_payload::has_mm | ( | ) | [inline] |
void tlm::tlm_generic_payload::reset | ( | ) | [inline] |
Definition at line 154 of file tlm_gp.h.
References m_extensions.
Referenced by tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::fw_process::free(), and tlm_utils::simple_target_socket< MODULE, BUSWIDTH, TYPES >::fw_process::free().
tlm_generic_payload& tlm::tlm_generic_payload::operator= | ( | const tlm_generic_payload & | x | ) | [inline, private] |
Definition at line 183 of file tlm_gp.h.
References get_address(), get_byte_enable_length(), get_byte_enable_ptr(), get_command(), get_data_length(), get_data_ptr(), get_extension(), get_response_status(), get_streaming_width(), is_dmi_allowed(), m_address, m_byte_enable, m_byte_enable_length, m_command, m_data, m_dmi, m_extensions, m_length, m_response_status, and m_streaming_width.
void tlm::tlm_generic_payload::deep_copy_from | ( | const tlm_generic_payload & | other | ) | [inline] |
Definition at line 207 of file tlm_gp.h.
References get_address(), get_byte_enable_length(), get_command(), get_data_length(), get_response_status(), get_streaming_width(), has_mm(), is_dmi_allowed(), m_address, m_byte_enable, m_byte_enable_length, m_command, m_data, m_dmi, m_extensions, m_length, m_response_status, m_streaming_width, set_auto_extension(), and set_extension().
void tlm::tlm_generic_payload::update_extensions_from | ( | const tlm_generic_payload & | other | ) | [inline] |
void tlm::tlm_generic_payload::free_all_extensions | ( | ) | [inline] |
bool tlm::tlm_generic_payload::is_read | ( | ) | const [inline] |
Definition at line 299 of file tlm_gp.h.
References m_command, and tlm::TLM_READ_COMMAND.
Referenced by tlm::tlm_from_hostendian_aligned(), tlm::tlm_from_hostendian_generic(), tlm::tlm_from_hostendian_word(), and tlm::tlm_to_hostendian_word().
void tlm::tlm_generic_payload::set_read | ( | ) | [inline] |
bool tlm::tlm_generic_payload::is_write | ( | ) | const [inline] |
Definition at line 301 of file tlm_gp.h.
References m_command, and tlm::TLM_WRITE_COMMAND.
Referenced by tlm::tlm_to_hostendian_aligned(), and tlm::tlm_to_hostendian_generic().
void tlm::tlm_generic_payload::set_write | ( | ) | [inline] |
tlm_command tlm::tlm_generic_payload::get_command | ( | ) | const [inline] |
Definition at line 303 of file tlm_gp.h.
References m_command.
Referenced by deep_copy_from(), and operator=().
void tlm::tlm_generic_payload::set_command | ( | const tlm_command | command | ) | [inline] |
sc_dt::uint64 tlm::tlm_generic_payload::get_address | ( | ) | const [inline] |
Definition at line 307 of file tlm_gp.h.
References m_address.
Referenced by deep_copy_from(), operator=(), tlm::tlm_to_hostendian_generic(), tlm::tlm_to_hostendian_single(), and tlm::tlm_to_hostendian_word().
void tlm::tlm_generic_payload::set_address | ( | const sc_dt::uint64 | address | ) | [inline] |
Definition at line 308 of file tlm_gp.h.
References m_address.
Referenced by tlm::tlm_to_hostendian_generic(), tlm::tlm_to_hostendian_single(), and tlm::tlm_to_hostendian_word().
unsigned char* tlm::tlm_generic_payload::get_data_ptr | ( | ) | const [inline] |
Definition at line 311 of file tlm_gp.h.
References m_data.
Referenced by operator=(), tlm::tlm_from_hostendian_aligned(), tlm::tlm_from_hostendian_generic(), tlm::tlm_from_hostendian_word(), tlm::tlm_to_hostendian_aligned(), tlm::tlm_to_hostendian_generic(), and tlm::tlm_to_hostendian_word().
void tlm::tlm_generic_payload::set_data_ptr | ( | unsigned char * | data | ) | [inline] |
Definition at line 312 of file tlm_gp.h.
References m_data.
Referenced by tlm::tlm_to_hostendian_aligned(), tlm::tlm_to_hostendian_generic(), and tlm::tlm_to_hostendian_word().
unsigned int tlm::tlm_generic_payload::get_data_length | ( | ) | const [inline] |
Definition at line 315 of file tlm_gp.h.
References m_length.
Referenced by deep_copy_from(), operator=(), tlm::tlm_from_hostendian_aligned(), tlm::tlm_from_hostendian_generic(), tlm::tlm_to_hostendian_aligned(), tlm::tlm_to_hostendian_generic(), and tlm::tlm_to_hostendian_word().
void tlm::tlm_generic_payload::set_data_length | ( | const unsigned int | length | ) | [inline] |
Definition at line 316 of file tlm_gp.h.
References m_length.
Referenced by tlm::tlm_to_hostendian_generic(), and tlm::tlm_to_hostendian_word().
bool tlm::tlm_generic_payload::is_response_ok | ( | ) | const [inline] |
bool tlm::tlm_generic_payload::is_response_error | ( | ) | const [inline] |
tlm_response_status tlm::tlm_generic_payload::get_response_status | ( | ) | const [inline] |
Definition at line 321 of file tlm_gp.h.
References m_response_status.
Referenced by deep_copy_from(), and operator=().
void tlm::tlm_generic_payload::set_response_status | ( | const tlm_response_status | response_status | ) | [inline] |
std::string tlm::tlm_generic_payload::get_response_string | ( | ) | const [inline] |
Definition at line 324 of file tlm_gp.h.
References m_response_status, tlm::TLM_ADDRESS_ERROR_RESPONSE, tlm::TLM_BURST_ERROR_RESPONSE, tlm::TLM_BYTE_ENABLE_ERROR_RESPONSE, tlm::TLM_COMMAND_ERROR_RESPONSE, tlm::TLM_GENERIC_ERROR_RESPONSE, tlm::TLM_INCOMPLETE_RESPONSE, and tlm::TLM_OK_RESPONSE.
unsigned int tlm::tlm_generic_payload::get_streaming_width | ( | ) | const [inline] |
Definition at line 340 of file tlm_gp.h.
References m_streaming_width.
Referenced by deep_copy_from(), operator=(), tlm::tlm_from_hostendian_generic(), and tlm::tlm_to_hostendian_generic().
void tlm::tlm_generic_payload::set_streaming_width | ( | const unsigned int | streaming_width | ) | [inline] |
Definition at line 341 of file tlm_gp.h.
References m_streaming_width.
Referenced by tlm::tlm_to_hostendian_generic(), and tlm::tlm_to_hostendian_word().
unsigned char* tlm::tlm_generic_payload::get_byte_enable_ptr | ( | ) | const [inline] |
Definition at line 344 of file tlm_gp.h.
References m_byte_enable.
Referenced by operator=(), tlm::tlm_from_hostendian_aligned(), tlm::tlm_from_hostendian_generic(), tlm::tlm_from_hostendian_word(), tlm::tlm_to_hostendian_aligned(), tlm::tlm_to_hostendian_generic(), and tlm::tlm_to_hostendian_word().
void tlm::tlm_generic_payload::set_byte_enable_ptr | ( | unsigned char * | byte_enable | ) | [inline] |
Definition at line 345 of file tlm_gp.h.
References m_byte_enable.
Referenced by tlm::tlm_to_hostendian_aligned(), tlm::tlm_to_hostendian_generic(), and tlm::tlm_to_hostendian_word().
unsigned int tlm::tlm_generic_payload::get_byte_enable_length | ( | ) | const [inline] |
Definition at line 346 of file tlm_gp.h.
References m_byte_enable_length.
Referenced by deep_copy_from(), operator=(), and tlm::tlm_to_hostendian_generic().
void tlm::tlm_generic_payload::set_byte_enable_length | ( | const unsigned int | byte_enable_length | ) | [inline] |
Definition at line 347 of file tlm_gp.h.
References m_byte_enable_length.
Referenced by tlm::tlm_to_hostendian_aligned(), tlm::tlm_to_hostendian_generic(), and tlm::tlm_to_hostendian_word().
void tlm::tlm_generic_payload::set_dmi_allowed | ( | bool | dmi_allowed | ) | [inline] |
bool tlm::tlm_generic_payload::is_dmi_allowed | ( | ) | const [inline] |
Definition at line 352 of file tlm_gp.h.
References m_dmi.
Referenced by deep_copy_from(), and operator=().
T* tlm::tlm_generic_payload::set_extension | ( | T * | ext | ) | [inline] |
Definition at line 440 of file tlm_gp.h.
Referenced by deep_copy_from(), tlm::establish_context(), and tlm_utils::instance_specific_extension_accessor::operator()().
tlm_extension_base* tlm::tlm_generic_payload::set_extension | ( | unsigned int | index, | |
tlm_extension_base * | ext | |||
) | [inline] |
T* tlm::tlm_generic_payload::set_auto_extension | ( | T * | ext | ) | [inline] |
tlm_extension_base* tlm::tlm_generic_payload::set_auto_extension | ( | unsigned int | index, | |
tlm_extension_base * | ext | |||
) | [inline] |
void tlm::tlm_generic_payload::get_extension | ( | T *& | ext | ) | const [inline] |
Definition at line 473 of file tlm_gp.h.
Referenced by tlm::establish_context(), operator=(), tlm::tlm_from_hostendian(), and tlm_generic_payload().
T* tlm::tlm_generic_payload::get_extension | ( | ) | const [inline] |
tlm_extension_base* tlm::tlm_generic_payload::get_extension | ( | unsigned int | index | ) | const [inline] |
void tlm::tlm_generic_payload::clear_extension | ( | const T * | ext | ) | [inline] |
Definition at line 491 of file tlm_gp.h.
Referenced by tlm_utils::instance_specific_extension_container::dec_use_count().
void tlm::tlm_generic_payload::clear_extension | ( | ) | [inline] |
void tlm::tlm_generic_payload::release_extension | ( | T * | ext | ) | [inline] |
void tlm::tlm_generic_payload::release_extension | ( | ) | [inline] |
void tlm::tlm_generic_payload::clear_extension | ( | unsigned int | index | ) | [inline, private] |
void tlm::tlm_generic_payload::release_extension | ( | unsigned int | index | ) | [inline, private] |
void tlm::tlm_generic_payload::resize_extensions | ( | ) | [inline] |
Definition at line 547 of file tlm_gp.h.
References m_extensions, and tlm::max_num_extensions().
sc_dt::uint64 tlm::tlm_generic_payload::m_address [private] |
Definition at line 391 of file tlm_gp.h.
Referenced by deep_copy_from(), get_address(), operator=(), and set_address().
Definition at line 392 of file tlm_gp.h.
Referenced by deep_copy_from(), get_command(), is_read(), is_write(), operator=(), set_command(), set_read(), and set_write().
unsigned char* tlm::tlm_generic_payload::m_data [private] |
Definition at line 393 of file tlm_gp.h.
Referenced by deep_copy_from(), get_data_ptr(), operator=(), and set_data_ptr().
unsigned int tlm::tlm_generic_payload::m_length [private] |
Definition at line 394 of file tlm_gp.h.
Referenced by deep_copy_from(), get_data_length(), operator=(), and set_data_length().
Definition at line 395 of file tlm_gp.h.
Referenced by deep_copy_from(), get_response_status(), get_response_string(), is_response_error(), is_response_ok(), operator=(), and set_response_status().
bool tlm::tlm_generic_payload::m_dmi [private] |
Definition at line 396 of file tlm_gp.h.
Referenced by deep_copy_from(), is_dmi_allowed(), operator=(), and set_dmi_allowed().
unsigned char* tlm::tlm_generic_payload::m_byte_enable [private] |
Definition at line 397 of file tlm_gp.h.
Referenced by deep_copy_from(), get_byte_enable_ptr(), operator=(), and set_byte_enable_ptr().
unsigned int tlm::tlm_generic_payload::m_byte_enable_length [private] |
Definition at line 398 of file tlm_gp.h.
Referenced by deep_copy_from(), get_byte_enable_length(), operator=(), and set_byte_enable_length().
unsigned int tlm::tlm_generic_payload::m_streaming_width [private] |
Definition at line 399 of file tlm_gp.h.
Referenced by deep_copy_from(), get_streaming_width(), operator=(), and set_streaming_width().
Definition at line 553 of file tlm_gp.h.
Referenced by clear_extension(), deep_copy_from(), free_all_extensions(), get_extension(), operator=(), release_extension(), reset(), resize_extensions(), set_auto_extension(), set_extension(), tlm_generic_payload(), update_extensions_from(), and ~tlm_generic_payload().
tlm_mm_interface* tlm::tlm_generic_payload::m_mm [private] |
Definition at line 554 of file tlm_gp.h.
Referenced by acquire(), has_mm(), release(), release_extension(), set_auto_extension(), and set_mm().
unsigned int tlm::tlm_generic_payload::m_ref_count [private] |