gem5 v24.0.0.0
Loading...
Searching...
No Matches
sc_core::sc_export< IF > Class Template Reference

#include <sc_export.hh>

Inheritance diagram for sc_core::sc_export< IF >:
sc_core::sc_export_base sc_core::sc_object

Public Member Functions

 sc_export ()
 
 sc_export (const char *n)
 
virtual ~sc_export ()
 
virtual const char * kind () const override
 
void operator() (IF &i)
 
virtual void bind (IF &i)
 
 operator IF & ()
 
 operator const IF & () const
 
IF * operator-> ()
 
const IF * operator-> () const
 
sc_interfaceget_iterface () override
 
const sc_interfaceget_interface () const override
 
- Public Member Functions inherited from sc_core::sc_export_base
 sc_export_base (const char *n)
 
 ~sc_export_base ()
 
- Public Member Functions inherited from sc_core::sc_object
const char * name () const
 
const char * basename () 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_objectget_parent_object () const
 
bool add_attribute (sc_attr_base &)
 
sc_attr_baseget_attribute (const std::string &)
 
sc_attr_baseremove_attribute (const std::string &)
 
void remove_all_attributes ()
 
int num_attributes () const
 
sc_attr_cltnattr_cltn ()
 
const sc_attr_cltnattr_cltn () const
 
sc_simcontextsimcontext () const
 

Protected Member Functions

void before_end_of_elaboration () override
 
void end_of_elaboration () override
 
void start_of_simulation () override
 
void end_of_simulation () override
 
- Protected Member Functions inherited from sc_core::sc_object
 sc_object ()
 
 sc_object (const char *)
 
 sc_object (const sc_object &)
 
sc_objectoperator= (const sc_object &)
 
virtual ~sc_object ()
 

Private Member Functions

 sc_export (const sc_export< IF > &)
 
sc_export< IF > & operator= (const sc_export< IF > &)
 

Private Attributes

IF * interface
 

Detailed Description

template<class IF>
class sc_core::sc_export< IF >

Definition at line 60 of file sc_export.hh.

Constructor & Destructor Documentation

◆ sc_export() [1/3]

template<class IF >
sc_core::sc_export< IF >::sc_export ( )
inline

Definition at line 63 of file sc_export.hh.

◆ sc_export() [2/3]

template<class IF >
sc_core::sc_export< IF >::sc_export ( const char * n)
inlineexplicit

Definition at line 66 of file sc_export.hh.

◆ ~sc_export()

template<class IF >
virtual sc_core::sc_export< IF >::~sc_export ( )
inlinevirtual

Definition at line 69 of file sc_export.hh.

◆ sc_export() [3/3]

template<class IF >
sc_core::sc_export< IF >::sc_export ( const sc_export< IF > & )
private

Member Function Documentation

◆ before_end_of_elaboration()

template<class IF >
void sc_core::sc_export< IF >::before_end_of_elaboration ( )
inlineoverrideprotectedvirtual

Implements sc_core::sc_export_base.

Definition at line 110 of file sc_export.hh.

◆ bind()

◆ end_of_elaboration()

template<class IF >
void sc_core::sc_export< IF >::end_of_elaboration ( )
inlineoverrideprotectedvirtual

◆ end_of_simulation()

template<class IF >
void sc_core::sc_export< IF >::end_of_simulation ( )
inlineoverrideprotectedvirtual

Implements sc_core::sc_export_base.

Definition at line 121 of file sc_export.hh.

◆ get_interface()

template<class IF >
const sc_interface * sc_core::sc_export< IF >::get_interface ( ) const
inlineoverridevirtual

Implements sc_core::sc_export_base.

Definition at line 107 of file sc_export.hh.

References sc_core::sc_export< IF >::interface.

◆ get_iterface()

template<class IF >
sc_interface * sc_core::sc_export< IF >::get_iterface ( )
inlineoverridevirtual

Implements sc_core::sc_export_base.

Definition at line 106 of file sc_export.hh.

References sc_core::sc_export< IF >::interface.

◆ kind()

template<class IF >
virtual const char * sc_core::sc_export< IF >::kind ( ) const
inlineoverridevirtual

Reimplemented from sc_core::sc_object.

Reimplemented in gem5::ClockRateControlTargetSocket, gem5::SignalInterruptTargetSocket, tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >, tlm::tlm_base_target_socket< 32, tlm_fw_transport_if< tlm_base_protocol_types >, tlm_bw_transport_if< tlm_base_protocol_types >, 1, sc_core::SC_ONE_OR_MORE_BOUND >, tlm::tlm_base_target_socket< 64, ClockRateControlFwIf, ClockRateControlBwIf >, tlm::tlm_base_target_socket< 64, SignalInterruptFwIf, SignalInterruptBwIf >, tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< my_extended_payload_types >, tlm_bw_transport_if< my_extended_payload_types >, N, POL >, tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< tlm::tlm_base_protocol_types >, tlm_bw_transport_if< tlm::tlm_base_protocol_types >, N, POL >, tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< tlm_base_protocol_types >, tlm_bw_transport_if< tlm_base_protocol_types >, 1, sc_core::SC_ONE_OR_MORE_BOUND >, tlm::tlm_base_target_socket< BUSWIDTH, tlm_fw_transport_if< TYPES >, tlm_bw_transport_if< TYPES >, N, POL >, tlm::tlm_target_socket< BUSWIDTH, TYPES, N, POL >, tlm::tlm_target_socket< 32 >, tlm::tlm_target_socket< 32, tlm::tlm_base_protocol_types, 0, sc_core::SC_ONE_OR_MORE_BOUND >, tlm::tlm_target_socket< BUSWIDTH, my_extended_payload_types, 1, sc_core::SC_ONE_OR_MORE_BOUND >, tlm::tlm_target_socket< BUSWIDTH, tlm::tlm_base_protocol_types, 1, POL >, tlm::tlm_target_socket< BUSWIDTH, tlm::tlm_base_protocol_types, 1, sc_core::SC_ONE_OR_MORE_BOUND >, tlm::tlm_target_socket< BUSWIDTH, tlm::tlm_base_protocol_types, N, POL >, and tlm::tlm_target_socket< BUSWIDTH, TYPES, 1, sc_core::SC_ONE_OR_MORE_BOUND >.

Definition at line 71 of file sc_export.hh.

Referenced by sc_core::sc_export< IF >::end_of_elaboration().

◆ operator const IF &()

template<class IF >
sc_core::sc_export< IF >::operator const IF & ( ) const
inline

Definition at line 89 of file sc_export.hh.

◆ operator IF &()

template<class IF >
sc_core::sc_export< IF >::operator IF & ( )
inline

Definition at line 83 of file sc_export.hh.

◆ operator()()

template<class IF >
void sc_core::sc_export< IF >::operator() ( IF & i)
inline

Definition at line 73 of file sc_export.hh.

References sc_core::sc_export< IF >::bind().

◆ operator->() [1/2]

template<class IF >
IF * sc_core::sc_export< IF >::operator-> ( )
inline

◆ operator->() [2/2]

template<class IF >
const IF * sc_core::sc_export< IF >::operator-> ( ) const
inline

◆ operator=()

template<class IF >
sc_export< IF > & sc_core::sc_export< IF >::operator= ( const sc_export< IF > & )
private

◆ start_of_simulation()

template<class IF >
void sc_core::sc_export< IF >::start_of_simulation ( )
inlineoverrideprotectedvirtual

Implements sc_core::sc_export_base.

Reimplemented in tlm_utils::simple_target_socket_b< MODULE, BUSWIDTH, TYPES, POL >, tlm_utils::simple_target_socket_b< adapt_ext2gp, BUSWIDTH, my_extended_payload_types >, tlm_utils::simple_target_socket_b< adapt_gp2ext, BUSWIDTH, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< ExplicitATTarget, 32, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< ExplicitLTTarget, 32, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< gem5::fastmodel::AmbaFromTlmBridge64, BUSWIDTH, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< gem5::fastmodel::AmbaToTlmBridge64, BUSWIDTH, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< gem5::memory::DRAMSysWrapper, 32, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< MODULE, 32, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< MODULE, 32, tlm::tlm_base_protocol_types, sc_core::SC_ZERO_OR_MORE_BOUND >, tlm_utils::simple_target_socket_b< sc_gem5::TlmToGem5Bridge< BITWIDTH >, BUSWIDTH, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< SimpleATTarget1, 32, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< SimpleATTarget2, 32, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_b< SimpleLTTarget_ext, BUSWIDTH, my_extended_payload_types >, tlm_utils::simple_target_socket_tagged_b< MODULE, BUSWIDTH, TYPES, POL >, tlm_utils::simple_target_socket_tagged_b< MODULE, 32, tlm::tlm_base_protocol_types >, tlm_utils::simple_target_socket_tagged_b< MODULE, 32, tlm::tlm_base_protocol_types, sc_core::SC_ZERO_OR_MORE_BOUND >, tlm_utils::simple_target_socket_tagged_b< SimpleBusAT, 32, tlm::tlm_base_protocol_types >, and tlm_utils::simple_target_socket_tagged_b< SimpleBusLT, 32, tlm::tlm_base_protocol_types >.

Definition at line 120 of file sc_export.hh.

Member Data Documentation

◆ interface


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

Generated on Tue Jun 18 2024 16:24:55 for gem5 by doxygen 1.11.0