TLM-2.0  2.0.4
Accellera TLM-2.0 proof-of-concept library
tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL > Class Template Referenceabstract

#include <tlm_utils/multi_socket_bases.h>

Inheritance diagram for tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >:
Collaboration diagram for tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >:

Public Types

typedef tlm::tlm_initiator_socket< BUSWIDTH, TYPES, N, POL > base_type
 
typedef tlm_fw_transport_if< TYPES > fw_interface_type
 
typedef tlm_bw_transport_if< TYPES > bw_interface_type
 
typedef sc_core::sc_port< fw_interface_type, N, POL > port_type
 
typedef sc_core::sc_export< bw_interface_typeexport_type
 
typedef tlm_base_target_socket_b< BUSWIDTH, fw_interface_type, bw_interface_typebase_target_socket_type
 
typedef unsigned phase_cb_mask
 
typedef sc_port_b< IF > this_type
 

Public Member Functions

virtual void disable_cb_bind ()=0
 
virtual multi_init_baseget_hierarch_bind ()=0
 
virtual tlm::tlm_socket_category get_socket_category () const
 
virtual ~multi_init_base ()
 
 multi_init_base ()
 
 multi_init_base (const char *name)
 
virtual const char * kind () const
 
virtual sc_core::sc_type_index get_protocol_types () const
 
virtual void bind (base_target_socket_type &s)
 
virtual void bind (base_type &s)
 
virtual void bind (bw_interface_type &ifs)
 
SC_VIRTUAL_ void bind (IF &interface_)
 
SC_VIRTUAL_ void bind (port_type &parent_)
 
void operator() (base_target_socket_type &s)
 
void operator() (base_type &s)
 
void operator() (bw_interface_type &s)
 
void operator() (IF &interface_)
 
void operator() (port_type &parent_)
 
virtual sc_core::sc_port_baseget_port_base ()
 
virtual sc_core::sc_port_base const & get_port_base () const
 
virtual sc_core::sc_export_baseget_export_base ()
 
virtual sc_core::sc_export_base const & get_export_base () const
 
virtual unsigned int get_bus_width () const
 
virtual sc_core::sc_port_b< tlm_fw_transport_if< TYPES > > & get_base_port ()
 
virtual sc_core::sc_port_b< tlm_fw_transport_if< TYPES > > const & get_base_port () const
 
virtual tlm_bw_transport_if< TYPES > & get_base_interface ()
 
virtual tlm_bw_transport_if< TYPES > const & get_base_interface () const
 
virtual sc_core::sc_export< tlm_bw_transport_if< TYPES > > & get_base_export ()
 
virtual sc_core::sc_export< tlm_bw_transport_if< TYPES > > const & get_base_export () const
 
int size () const
 
IF * operator-> ()
 
const IF * operator-> () const
 
const IF * get_interface (int iface_i) const
 
IF * get_interface (int iface_i)
 
virtual sc_interface * get_interface ()
 
virtual const sc_interface * get_interface () const
 
IF * operator[] (int index_)
 
const IF * operator[] (int index_) const
 
virtual sc_type_index get_interface_type () const
 
int bind_count ()
 
const char * name () const
 
const char * basename () const
 
virtual void print (::std::ostream &os=::std::cout) const
 
virtual void dump (::std::ostream &os=::std::cout) const
 
virtual void trace (sc_trace_file *tf) const
 
sc_simcontextsimcontext () const
 
bool add_attribute (sc_attr_base &)
 
sc_attr_base * get_attribute (const std::string &name_)
 
const sc_attr_base * get_attribute (const std::string &name_) const
 
sc_attr_base * remove_attribute (const std::string &name_)
 
void remove_all_attributes ()
 
int num_attributes () const
 
sc_attr_cltn & attr_cltn ()
 
const sc_attr_cltn & attr_cltn () const
 
virtual const std::vector< sc_event *> & get_child_events () const
 
virtual const std::vector< sc_object *> & get_child_objects () const
 
sc_objectget_parent () const
 
sc_objectget_parent_object () const
 
virtual std::vector< callback_binder_bw< TYPES > *> & get_binders ()=0
 
virtual std::vector< tlm::tlm_fw_transport_if< TYPES > * > & get_sockets ()=0
 

Protected Member Functions

void bind (sc_interface &interface_)
 
void bind (this_type &parent_)
 
virtual int vbind (sc_interface &)
 
virtual int vbind (sc_port_base &)
 
virtual void make_sensitive (sc_thread_handle, sc_event_finder *=0) const
 
virtual void make_sensitive (sc_method_handle, sc_event_finder *=0) const
 
virtual void before_end_of_elaboration ()
 
virtual void end_of_elaboration ()
 
virtual void start_of_simulation ()
 
virtual void end_of_simulation ()
 
void report_error (const char *id, const char *add_msg=0) const
 
void add_static_event (sc_method_handle process_p, const sc_event &event) const
 
void add_static_event (sc_thread_handle process_p, const sc_event &event) const
 
virtual void add_child_event (sc_event *event_p)
 
virtual void add_child_object (sc_object *object_p)
 
virtual bool remove_child_event (sc_event *event_p)
 
virtual bool remove_child_object (sc_object *object_p)
 
phase_cb_mask register_simulation_phase_callback (phase_cb_mask)
 
phase_cb_mask unregister_simulation_phase_callback (phase_cb_mask)
 
void display_warning (const char *msg) const
 
void display_error (const char *msg) const
 

Protected Attributes

export_type m_export
 
sc_bind_info * m_bind_info
 

Detailed Description

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
class tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >

Definition at line 334 of file multi_socket_bases.h.

Member Typedef Documentation

◆ base_target_socket_type

typedef tlm_base_target_socket_b<BUSWIDTH, fw_interface_type, bw_interface_type> tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::base_target_socket_type
inherited

Definition at line 80 of file tlm_initiator_socket.h.

◆ base_type

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
typedef tlm::tlm_initiator_socket<BUSWIDTH, TYPES, N, POL> tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >::base_type

Definition at line 341 of file multi_socket_bases.h.

◆ bw_interface_type

typedef tlm_bw_transport_if< TYPES > tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::bw_interface_type
inherited

Definition at line 73 of file tlm_initiator_socket.h.

◆ export_type

typedef sc_core::sc_export<bw_interface_type> tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::export_type
inherited

Definition at line 76 of file tlm_initiator_socket.h.

◆ fw_interface_type

typedef tlm_fw_transport_if< TYPES > tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::fw_interface_type
inherited

Definition at line 72 of file tlm_initiator_socket.h.

◆ port_type

typedef sc_core::sc_port<fw_interface_type,N,POL> tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::port_type
inherited

Definition at line 74 of file tlm_initiator_socket.h.

Constructor & Destructor Documentation

◆ ~multi_init_base()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >::~multi_init_base ( )
inlinevirtual

Definition at line 358 of file multi_socket_bases.h.

◆ multi_init_base() [1/2]

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >::multi_init_base ( )
inline

Definition at line 359 of file multi_socket_bases.h.

◆ multi_init_base() [2/2]

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >::multi_init_base ( const char *  name)
inline

Definition at line 360 of file multi_socket_bases.h.

Member Function Documentation

◆ bind() [1/3]

virtual void tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::bind ( base_target_socket_type s)
inlinevirtualinherited

◆ bind() [2/3]

virtual void tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::bind ( base_type s)
inlinevirtualinherited

◆ bind() [3/3]

virtual void tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::bind ( bw_interface_type ifs)
inlinevirtualinherited

Definition at line 147 of file tlm_initiator_socket.h.

◆ disable_cb_bind()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual void tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >::disable_cb_bind ( )
pure virtual

◆ display_error()

void tlm_utils::convenience_socket_base::display_error ( const char *  msg) const
inherited

◆ display_warning()

void tlm_utils::convenience_socket_base::display_warning ( const char *  msg) const
inherited

◆ get_base_export() [1/2]

virtual sc_core::sc_export<tlm_bw_transport_if< TYPES > >& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_base_export ( )
inlinevirtualinherited

◆ get_base_export() [2/2]

virtual sc_core::sc_export<tlm_bw_transport_if< TYPES > > const& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_base_export ( ) const
inlinevirtualinherited

◆ get_base_interface() [1/2]

virtual tlm_bw_transport_if< TYPES > & tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_base_interface ( )
inlinevirtualinherited

◆ get_base_interface() [2/2]

virtual tlm_bw_transport_if< TYPES > const& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_base_interface ( ) const
inlinevirtualinherited

◆ get_base_port() [1/2]

virtual sc_core::sc_port_b<tlm_fw_transport_if< TYPES > >& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_base_port ( )
inlinevirtualinherited

◆ get_base_port() [2/2]

virtual sc_core::sc_port_b<tlm_fw_transport_if< TYPES > > const& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_base_port ( ) const
inlinevirtualinherited

◆ get_binders()

template<typename TYPES = tlm::tlm_base_protocol_types>
virtual std::vector<callback_binder_bw<TYPES>* >& tlm_utils::multi_init_base_if< TYPES >::get_binders ( )
pure virtualinherited

◆ get_bus_width()

virtual unsigned int tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_bus_width ( ) const
inlinevirtualinherited

Implements tlm::tlm_base_socket_if.

Definition at line 166 of file tlm_initiator_socket.h.

◆ get_export_base() [1/2]

virtual sc_core::sc_export_base& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_export_base ( )
inlinevirtualinherited

Implements tlm::tlm_base_socket_if.

Definition at line 162 of file tlm_initiator_socket.h.

◆ get_export_base() [2/2]

virtual sc_core::sc_export_base const& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_export_base ( ) const
inlinevirtualinherited

Implements tlm::tlm_base_socket_if.

Definition at line 164 of file tlm_initiator_socket.h.

◆ get_hierarch_bind()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual multi_init_base* tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >::get_hierarch_bind ( )
pure virtual

◆ get_port_base() [1/2]

virtual sc_core::sc_port_base& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_port_base ( )
inlinevirtualinherited

Implements tlm::tlm_base_socket_if.

Definition at line 158 of file tlm_initiator_socket.h.

◆ get_port_base() [2/2]

virtual sc_core::sc_port_base const& tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::get_port_base ( ) const
inlinevirtualinherited

Implements tlm::tlm_base_socket_if.

Definition at line 160 of file tlm_initiator_socket.h.

◆ get_protocol_types()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm_base_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual sc_core::sc_type_index tlm::tlm_initiator_socket< BUSWIDTH, TYPES, N, POL >::get_protocol_types ( ) const
inlinevirtualinherited

Implements tlm::tlm_base_socket_if.

Definition at line 227 of file tlm_initiator_socket.h.

◆ get_socket_category()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types, unsigned int N = 0, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual tlm::tlm_socket_category tlm_utils::multi_init_base< BUSWIDTH, TYPES, N, POL >::get_socket_category ( ) const
inlinevirtual

◆ get_sockets()

template<typename TYPES = tlm::tlm_base_protocol_types>
virtual std::vector<tlm::tlm_fw_transport_if<TYPES>*>& tlm_utils::multi_init_base_if< TYPES >::get_sockets ( )
pure virtualinherited

◆ kind()

template<unsigned int BUSWIDTH = 32, typename TYPES = tlm_base_protocol_types, int N = 1, sc_core::sc_port_policy POL = sc_core::SC_ONE_OR_MORE_BOUND>
virtual const char* tlm::tlm_initiator_socket< BUSWIDTH, TYPES, N, POL >::kind ( ) const
inlinevirtualinherited

◆ operator()() [1/3]

void tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::operator() ( base_target_socket_type s)
inlineinherited

Definition at line 121 of file tlm_initiator_socket.h.

◆ operator()() [2/3]

void tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::operator() ( base_type s)
inlineinherited

Definition at line 138 of file tlm_initiator_socket.h.

◆ operator()() [3/3]

void tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::operator() ( bw_interface_type s)
inlineinherited

Definition at line 152 of file tlm_initiator_socket.h.

Member Data Documentation

◆ m_export

export_type tlm::tlm_base_initiator_socket< BUSWIDTH, tlm_fw_transport_if< TYPES > , tlm_bw_transport_if< TYPES > , N, POL >::m_export
protectedinherited

Definition at line 188 of file tlm_initiator_socket.h.


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