gem5 v24.0.0.0
Loading...
Searching...
No Matches
sc_gem5::ScPortWrapper< IF > Class Template Reference

#include <sc_port_wrapper.hh>

Inheritance diagram for sc_gem5::ScPortWrapper< IF >:
gem5::Port

Public Types

using ScPort = sc_core::sc_port_b<IF>
 

Public Member Functions

 ScPortWrapper (ScPort &p, const std::string &name, gem5::PortID id)
 
ScPortport ()
 
void unbind () override
 Dettach from a peer port.
 
void bind (gem5::Port &peer) override
 Attach to a peer port.
 
- Public Member Functions inherited from gem5::Port
virtual ~Port ()
 Virtual destructor due to inheritance.
 
PortgetPeer ()
 Return a reference to this port's peer.
 
const std::string name () const
 Return port name (for DPRINTF).
 
PortID getId () const
 Get the port id.
 
bool isConnected () const
 Is this port currently connected to a peer?
 
void takeOverFrom (Port *old)
 A utility function to make it easier to swap out ports.
 

Private Attributes

ScPortport_
 

Additional Inherited Members

- Protected Member Functions inherited from gem5::Port
void reportUnbound () const
 
 Port (const std::string &_name, PortID _id)
 Abstract base class for ports.
 
- Protected Attributes inherited from gem5::Port
const PortID id
 A numeric identifier to distinguish ports in a vector, and set to InvalidPortID in case this port is not part of a vector.
 
Port_peer
 A pointer to this port's peer.
 
bool _connected
 Whether this port is currently connected to a peer port.
 

Detailed Description

template<typename IF>
class sc_gem5::ScPortWrapper< IF >

Definition at line 52 of file sc_port_wrapper.hh.

Member Typedef Documentation

◆ ScPort

template<typename IF >
using sc_gem5::ScPortWrapper< IF >::ScPort = sc_core::sc_port_b<IF>

Definition at line 55 of file sc_port_wrapper.hh.

Constructor & Destructor Documentation

◆ ScPortWrapper()

template<typename IF >
sc_gem5::ScPortWrapper< IF >::ScPortWrapper ( ScPort & p,
const std::string & name,
gem5::PortID id )
inline

Definition at line 57 of file sc_port_wrapper.hh.

Member Function Documentation

◆ bind()

template<typename IF >
void sc_gem5::ScPortWrapper< IF >::bind ( gem5::Port & peer)
inlineoverridevirtual

Attach to a peer port.

Reimplemented from gem5::Port.

Definition at line 76 of file sc_port_wrapper.hh.

References gem5::Port::bind(), sc_core::sc_port_b< IF >::bind(), fatal, gem5::Port::name(), and sc_gem5::ScPortWrapper< IF >::port_.

◆ port()

template<typename IF >
ScPort & sc_gem5::ScPortWrapper< IF >::port ( )
inline

Definition at line 62 of file sc_port_wrapper.hh.

References sc_gem5::ScPortWrapper< IF >::port_.

◆ unbind()

template<typename IF >
void sc_gem5::ScPortWrapper< IF >::unbind ( )
inlineoverridevirtual

Dettach from a peer port.

Reimplemented from gem5::Port.

Definition at line 68 of file sc_port_wrapper.hh.

References panic.

Member Data Documentation

◆ port_

template<typename IF >
ScPort& sc_gem5::ScPortWrapper< IF >::port_
private

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

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