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

#include <sc_port.hh>

Inheritance diagram for sc_core::sc_port_b< IF >:
sc_core::sc_port_base sc_core::sc_object sc_core::sc_port< IF, N, P >

Public Member Functions

void operator() (IF &i)
 
void operator() (sc_port_b< IF > &p)
 
virtual void bind (IF &i)
 
virtual void bind (sc_port_b< IF > &p)
 
IF * operator-> ()
 
const IF * operator-> () const
 
IF * operator[] (int n)
 
const IF * operator[] (int n) const
 
sc_interfaceget_interface ()
 
const sc_interfaceget_interface () const
 
- Public Member Functions inherited from sc_core::sc_port_base
 sc_port_base (const char *name, int n, sc_port_policy p)
 
virtual ~sc_port_base ()
 
void warn_port_constructor () const
 
int maxSize () const
 
int size () const
 
const char * kind () const
 
- 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
 
 sc_port_b (int n, sc_port_policy p)
 
 sc_port_b (const char *name, int n, sc_port_policy p)
 
virtual ~sc_port_b ()
 
int vbind (sc_interface &i) override
 
int vbind (sc_port_base &pb) override
 
- Protected Member Functions inherited from sc_core::sc_port_base
void bind (sc_interface &)
 
void bind (sc_port_base &)
 
void report_error (const char *id, const char *add_msg) const
 
- 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_interface_gem5Interface (int n) const override
 
void _gem5AddInterface (sc_interface *iface) override
 
const char * _ifTypeName () const override
 
 sc_port_b ()
 
 sc_port_b (const sc_port_b< IF > &)
 
sc_port_b< IF > & operator= (const sc_port_b< IF > &)
 

Private Attributes

std::vector< IF * > _interfaces
 

Detailed Description

template<class IF>
class sc_core::sc_port_b< IF >

Definition at line 122 of file sc_port.hh.

Constructor & Destructor Documentation

◆ sc_port_b() [1/4]

template<class IF >
sc_core::sc_port_b< IF >::sc_port_b ( int n,
sc_port_policy p )
inlineexplicitprotected

Definition at line 190 of file sc_port.hh.

◆ sc_port_b() [2/4]

template<class IF >
sc_core::sc_port_b< IF >::sc_port_b ( const char * name,
int n,
sc_port_policy p )
inlineprotected

Definition at line 193 of file sc_port.hh.

◆ ~sc_port_b()

template<class IF >
virtual sc_core::sc_port_b< IF >::~sc_port_b ( )
inlineprotectedvirtual

Definition at line 196 of file sc_port.hh.

◆ sc_port_b() [3/4]

template<class IF >
sc_core::sc_port_b< IF >::sc_port_b ( )
inlineprivate

Definition at line 247 of file sc_port.hh.

◆ sc_port_b() [4/4]

template<class IF >
sc_core::sc_port_b< IF >::sc_port_b ( const sc_port_b< IF > & )
inlineprivate

Definition at line 248 of file sc_port.hh.

Member Function Documentation

◆ _gem5AddInterface()

template<class IF >
void sc_core::sc_port_b< IF >::_gem5AddInterface ( sc_interface * iface)
inlineoverrideprivatevirtual

◆ _gem5Interface()

template<class IF >
sc_interface * sc_core::sc_port_b< IF >::_gem5Interface ( int n) const
inlineoverrideprivatevirtual

◆ _ifTypeName()

template<class IF >
const char * sc_core::sc_port_b< IF >::_ifTypeName ( ) const
inlineoverrideprivatevirtual

Implements sc_core::sc_port_base.

Definition at line 244 of file sc_port.hh.

References sc_core::sc_object::name().

◆ before_end_of_elaboration()

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

Implements sc_core::sc_port_base.

Definition at line 185 of file sc_port.hh.

◆ bind() [1/2]

◆ bind() [2/2]

template<class IF >
virtual void sc_core::sc_port_b< IF >::bind ( sc_port_b< IF > & p)
inlinevirtual

Definition at line 129 of file sc_port.hh.

References sc_core::sc_port_base::bind().

◆ end_of_elaboration()

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

Implements sc_core::sc_port_base.

Definition at line 186 of file sc_port.hh.

◆ end_of_simulation()

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

Implements sc_core::sc_port_base.

Definition at line 188 of file sc_port.hh.

◆ get_interface() [1/2]

template<class IF >
sc_interface * sc_core::sc_port_b< IF >::get_interface ( )
inline

Definition at line 170 of file sc_port.hh.

References sc_core::sc_port_b< IF >::_interfaces.

◆ get_interface() [2/2]

template<class IF >
const sc_interface * sc_core::sc_port_b< IF >::get_interface ( ) const
inline

Definition at line 177 of file sc_port.hh.

References sc_core::sc_port_b< IF >::_interfaces.

◆ operator()() [1/2]

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

Definition at line 125 of file sc_port.hh.

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

◆ operator()() [2/2]

template<class IF >
void sc_core::sc_port_b< IF >::operator() ( sc_port_b< IF > & p)
inline

Definition at line 126 of file sc_port.hh.

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

◆ operator->() [1/2]

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

◆ operator->() [2/2]

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

◆ operator=()

template<class IF >
sc_port_b< IF > & sc_core::sc_port_b< IF >::operator= ( const sc_port_b< IF > & )
inlineprivate

Definition at line 249 of file sc_port.hh.

◆ operator[]() [1/2]

template<class IF >
IF * sc_core::sc_port_b< IF >::operator[] ( int n)
inline

◆ operator[]() [2/2]

template<class IF >
const IF * sc_core::sc_port_b< IF >::operator[] ( int n) const
inline

◆ start_of_simulation()

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

Implements sc_core::sc_port_base.

Definition at line 187 of file sc_port.hh.

◆ vbind() [1/2]

◆ vbind() [2/2]

template<class IF >
int sc_core::sc_port_b< IF >::vbind ( sc_port_base & pb)
inlineoverrideprotectedvirtual

Implements sc_core::sc_port_base.

Definition at line 209 of file sc_port.hh.

References sc_core::sc_port_base::bind().

Member Data Documentation

◆ _interfaces


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