20#ifndef __SYSTEMC_EXT_TLM_CORE_1_REQ_RSP_PORTS_EVENT_FINDER_HH__
21#define __SYSTEMC_EXT_TLM_CORE_1_REQ_RSP_PORTS_EVENT_FINDER_HH__
30template <
class IF,
class T>
55template <
class IF,
class T>
59 const IF *iface = if_p ?
dynamic_cast<const IF *
>(if_p) :
60 dynamic_cast<const IF *
>(this->port()->_gem5Interface(0));
61 if (iface ==
nullptr) {
62 std::ostringstream out;
63 out <<
"port is not bound: port '" << this->port()->name() <<
64 "' (" << this->port()->kind() <<
")";
69 return (
const_cast<IF *
>(iface)->*m_event_method)(
nullptr);
sc_event_finder_t(const sc_port_base &p, const sc_event &(IF::*_method)() const)
const sc_core::sc_event &(IF::* m_event_method)(tlm_tag< T > *) const
tlm_event_finder_t< IF, T > & operator=(const tlm_event_finder_t< IF, T > &)
virtual ~tlm_event_finder_t()
tlm_event_finder_t(const tlm_event_finder_t< IF, T > &)
virtual const sc_core::sc_event & find_event(sc_core::sc_interface *if_p=nullptr) const
tlm_event_finder_t(const sc_core::sc_port_base &port_, const sc_core::sc_event &(IF::*event_method_)(tlm_tag< T > *) const)
const char SC_ID_FIND_EVENT_[]
#define SC_REPORT_ERROR(msg_type, msg)