gem5  v21.1.0.2
Public Member Functions | Private Attributes | List of all members
gem5::IntSourcePinBase Class Reference

#include <intpin.hh>

Inheritance diagram for gem5::IntSourcePinBase:
gem5::Port gem5::IntSourcePin< Device > gem5::IntSourcePin< gem5::X86ISA::Cmos::X86RTC > gem5::IntSourcePin< gem5::X86ISA::I8042 > gem5::IntSourcePin< gem5::X86ISA::I8254 > gem5::IntSourcePin< gem5::X86ISA::I8259 >

Public Member Functions

 IntSourcePinBase (const std::string &_name, PortID _id, bool def_state)
 
void raise ()
 
void lower ()
 
void bind (Port &peer) override
 Attach to a peer port. More...
 
void unbind () override
 Dettach from a peer port. More...
 
- 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

IntSinkPinBasesink = nullptr
 
bool _state = false
 

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::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 93 of file intpin.hh.

Constructor & Destructor Documentation

◆ IntSourcePinBase()

gem5::IntSourcePinBase::IntSourcePinBase ( const std::string &  _name,
PortID  _id,
bool  def_state 
)
inline

Definition at line 100 of file intpin.hh.

Member Function Documentation

◆ bind()

void gem5::IntSourcePinBase::bind ( Port peer)
overridevirtual

Attach to a peer port.

Reimplemented from gem5::Port.

Definition at line 52 of file intpin.cc.

References _state, gem5::Port::bind(), fatal_if, lower(), gem5::Port::name(), and sink.

◆ lower()

void gem5::IntSourcePinBase::lower ( )
inline

Definition at line 105 of file intpin.hh.

References gem5::IntSinkPinBase::lower(), and sink.

Referenced by bind().

◆ raise()

void gem5::IntSourcePinBase::raise ( )
inline

Definition at line 104 of file intpin.hh.

References gem5::IntSinkPinBase::raise(), and sink.

◆ unbind()

void gem5::IntSourcePinBase::unbind ( )
overridevirtual

Dettach from a peer port.

Reimplemented from gem5::Port.

Definition at line 66 of file intpin.cc.

References sink, and gem5::Port::unbind().

Member Data Documentation

◆ _state

bool gem5::IntSourcePinBase::_state = false
private

Definition at line 97 of file intpin.hh.

Referenced by bind().

◆ sink

IntSinkPinBase* gem5::IntSourcePinBase::sink = nullptr
private

Definition at line 96 of file intpin.hh.

Referenced by bind(), lower(), raise(), and unbind().


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

Generated on Tue Sep 21 2021 12:27:43 for gem5 by doxygen 1.8.17