gem5  v22.0.0.2
Public Member Functions | Private Attributes | List of all members
gem5::sinic::Interface Class Reference

#include <sinic.hh>

Inheritance diagram for gem5::sinic::Interface:
gem5::EtherInt gem5::Port

Public Member Functions

 Interface (const std::string &name, Device *d)
 
virtual bool recvPacket (EthPacketPtr pkt)
 
virtual void sendDone ()
 
- Public Member Functions inherited from gem5::EtherInt
 EtherInt (const std::string &name, int idx=InvalidPortID)
 
virtual ~EtherInt ()
 
const std::string & name () const
 Return port name (for DPRINTF). More...
 
void bind (Port &peer) override
 Attach to a peer port. More...
 
void unbind () override
 Dettach from a peer port. More...
 
void setPeer (EtherInt *p)
 
EtherIntgetPeer ()
 
void recvDone ()
 
bool sendPacket (EthPacketPtr packet)
 
bool askBusy ()
 
virtual bool isBusy ()
 
- Public Member Functions inherited from gem5::Port
virtual ~Port ()
 Virtual destructor due to inheritance. More...
 
PortgetPeer ()
 Return a reference to this port's peer. More...
 
const std::string name () const
 Return port name (for DPRINTF). More...
 
PortID getId () const
 Get the port id. More...
 
bool isConnected () const
 Is this port currently connected to a peer? More...
 
void takeOverFrom (Port *old)
 A utility function to make it easier to swap out ports. More...
 

Private Attributes

Devicedev
 

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. More...
 
- Protected Attributes inherited from gem5::EtherInt
std::string portName
 
EtherIntpeer
 
- 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. More...
 
Port_peer
 A pointer to this port's peer. More...
 
bool _connected
 Whether this port is currently connected to a peer port. More...
 

Detailed Description

Definition at line 314 of file sinic.hh.

Constructor & Destructor Documentation

◆ Interface()

gem5::sinic::Interface::Interface ( const std::string &  name,
Device d 
)
inline

Definition at line 320 of file sinic.hh.

Member Function Documentation

◆ recvPacket()

virtual bool gem5::sinic::Interface::recvPacket ( EthPacketPtr  pkt)
inlinevirtual

Implements gem5::EtherInt.

Definition at line 324 of file sinic.hh.

References dev, and gem5::sinic::Device::recvPacket().

◆ sendDone()

virtual void gem5::sinic::Interface::sendDone ( )
inlinevirtual

Implements gem5::EtherInt.

Definition at line 325 of file sinic.hh.

References dev, and gem5::sinic::Device::transferDone().

Member Data Documentation

◆ dev

Device* gem5::sinic::Interface::dev
private

Definition at line 317 of file sinic.hh.

Referenced by recvPacket(), and sendDone().


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

Generated on Thu Jul 28 2022 13:34:16 for gem5 by doxygen 1.8.17