gem5 v24.0.0.0
|
An event queue that can contain any number of pending notifications. More...
#include <peq_with_cb_and_phase.h>
Classes | |
class | delta_list |
Public Member Functions | |
peq_with_cb_and_phase (OWNER *_owner, cb _cb) | |
peq_with_cb_and_phase (const char *_name, OWNER *_owner, cb _cb) | |
~peq_with_cb_and_phase () | |
void | notify (tlm_payload_type &t, const tlm_phase_type &p, const sc_core::sc_time &when) |
void | notify (tlm_payload_type &t, const tlm_phase_type &p) |
void | cancel_all () |
Public Member Functions inherited from sc_core::sc_object | |
const char * | name () const |
const char * | basename () const |
virtual const char * | kind () const |
virtual void | print (std::ostream &=std::cout) const |
virtual void | dump (std::ostream &=std::cout) const |
virtual const std::vector< sc_object * > & | get_child_objects () const |
virtual const std::vector< sc_event * > & | get_child_events () const |
sc_object * | get_parent_object () const |
bool | add_attribute (sc_attr_base &) |
sc_attr_base * | get_attribute (const std::string &) |
sc_attr_base * | remove_attribute (const std::string &) |
void | remove_all_attributes () |
int | num_attributes () const |
sc_attr_cltn & | attr_cltn () |
const sc_attr_cltn & | attr_cltn () const |
sc_simcontext * | simcontext () const |
Private Types | |
typedef TYPES::tlm_payload_type | tlm_payload_type |
typedef TYPES::tlm_phase_type | tlm_phase_type |
typedef std::pair< tlm_payload_type *, tlm_phase_type > | PAYLOAD |
typedef void(OWNER::* | cb) (tlm_payload_type &, const tlm_phase_type &) |
Private Member Functions | |
void | fec () |
Private Attributes | |
OWNER * | m_owner |
cb | m_cb |
time_ordered_list< PAYLOAD > | m_ppq |
delta_list | m_uneven_delta |
delta_list | m_even_delta |
delta_list | m_immediate_yield |
sc_core::sc_event | m_e |
Additional Inherited Members | |
Protected Member Functions inherited from sc_core::sc_object | |
sc_object () | |
sc_object (const char *) | |
sc_object (const sc_object &) | |
sc_object & | operator= (const sc_object &) |
virtual | ~sc_object () |
An event queue that can contain any number of pending notifications.
Each notification have an associate payload.
Definition at line 135 of file peq_with_cb_and_phase.h.
|
private |
Definition at line 140 of file peq_with_cb_and_phase.h.
|
private |
Definition at line 139 of file peq_with_cb_and_phase.h.
|
private |
Definition at line 137 of file peq_with_cb_and_phase.h.
|
private |
Definition at line 138 of file peq_with_cb_and_phase.h.
|
inline |
Definition at line 178 of file peq_with_cb_and_phase.h.
References sc_core::sc_spawn_options::dont_initialize(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_e, sc_core::sc_gen_unique_name(), sc_core::sc_spawn(), sc_core::sc_spawn_options::set_sensitivity(), and sc_core::sc_spawn_options::spawn_method().
|
inline |
Definition at line 191 of file peq_with_cb_and_phase.h.
References sc_core::sc_spawn_options::dont_initialize(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_e, sc_core::sc_gen_unique_name(), sc_core::sc_spawn(), sc_core::sc_spawn_options::set_sensitivity(), and sc_core::sc_spawn_options::spawn_method().
|
inline |
Definition at line 202 of file peq_with_cb_and_phase.h.
|
inline |
Definition at line 233 of file peq_with_cb_and_phase.h.
References sc_core::sc_event::cancel(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_e, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_even_delta, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_immediate_yield, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_ppq, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_uneven_delta, and tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::delta_list::reset().
|
inlineprivate |
Definition at line 244 of file peq_with_cb_and_phase.h.
References tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::delta_list::get(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_cb, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_e, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_even_delta, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_immediate_yield, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_owner, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_ppq, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_uneven_delta, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::delta_list::next(), sc_core::sc_event::notify(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::delta_list::reset(), sc_core::sc_delta_count(), sc_core::sc_time_stamp(), sc_core::SC_ZERO_TIME, and tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::delta_list::size.
Referenced by tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::peq_with_cb_and_phase(), and tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::peq_with_cb_and_phase().
|
inline |
|
inline |
Definition at line 205 of file peq_with_cb_and_phase.h.
References tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::delta_list::insert(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_e, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_even_delta, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_ppq, tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::m_uneven_delta, sc_core::sc_event::notify(), sc_core::sc_delta_count(), sc_core::sc_time_stamp(), and sc_core::SC_ZERO_TIME.
Referenced by MultiSocketSimpleSwitchAT::bwPEQcb(), MultiSocketSimpleSwitchAT::fwPEQcb(), MultiSocketSimpleSwitchAT::initiatorNBTransport(), MultiSocketSimpleSwitchAT::initiatorNBTransport_core(), and MultiSocketSimpleSwitchAT::targetNBTransport().
|
private |
Definition at line 292 of file peq_with_cb_and_phase.h.
Referenced by tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec().
|
private |
Definition at line 299 of file peq_with_cb_and_phase.h.
Referenced by tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::cancel_all(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::notify(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::notify(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::peq_with_cb_and_phase(), and tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::peq_with_cb_and_phase().
|
private |
Definition at line 296 of file peq_with_cb_and_phase.h.
Referenced by tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::cancel_all(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec(), and tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::notify().
|
private |
Definition at line 297 of file peq_with_cb_and_phase.h.
Referenced by tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::cancel_all(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec(), and tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::notify().
|
private |
Definition at line 291 of file peq_with_cb_and_phase.h.
Referenced by tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec().
|
private |
Definition at line 294 of file peq_with_cb_and_phase.h.
Referenced by tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::cancel_all(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec(), and tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::notify().
|
private |
Definition at line 295 of file peq_with_cb_and_phase.h.
Referenced by tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::cancel_all(), tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::fec(), and tlm_utils::peq_with_cb_and_phase< OWNER, TYPES >::notify().