gem5 v24.1.0.1
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
gem5::SignalSourcePort< State > Class Template Reference

#include <signal.hh>

Inheritance diagram for gem5::SignalSourcePort< State >:
gem5::Port

Public Member Functions

 SignalSourcePort (const std::string &_name, PortID _id=InvalidPortID)
 
 SignalSourcePort (const std::string &_name, PortID _id, const State &init_state)
 
void set (const State &new_state, const bool bypass_on_change=false)
 
const State & state () const
 
void bind (Port &peer) override
 Attach to a peer port.
 
void unbind () override
 Dettach from 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

SignalSinkPort< State > * sink = nullptr
 
State _state
 

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 State>
class gem5::SignalSourcePort< State >

Definition at line 98 of file signal.hh.

Constructor & Destructor Documentation

◆ SignalSourcePort() [1/2]

template<typename State >
gem5::SignalSourcePort< State >::SignalSourcePort ( const std::string &  _name,
PortID  _id = InvalidPortID 
)
inline

Definition at line 105 of file signal.hh.

References gem5::SignalSourcePort< State >::_state.

◆ SignalSourcePort() [2/2]

template<typename State >
gem5::SignalSourcePort< State >::SignalSourcePort ( const std::string &  _name,
PortID  _id,
const State &  init_state 
)
inline

Definition at line 112 of file signal.hh.

References gem5::SignalSourcePort< State >::_state.

Member Function Documentation

◆ bind()

template<typename State >
void gem5::SignalSourcePort< State >::bind ( Port peer)
inlineoverridevirtual

Attach to a peer port.

Reimplemented from gem5::Port.

Definition at line 131 of file signal.hh.

References gem5::Port::bind(), fatal_if, gem5::Port::name(), and gem5::SignalSourcePort< State >::sink.

◆ set()

template<typename State >
void gem5::SignalSourcePort< State >::set ( const State &  new_state,
const bool  bypass_on_change = false 
)
inline

◆ state()

template<typename State >
const State & gem5::SignalSourcePort< State >::state ( ) const
inline

Definition at line 128 of file signal.hh.

References gem5::SignalSourcePort< State >::_state.

◆ unbind()

template<typename State >
void gem5::SignalSourcePort< State >::unbind ( )
inlineoverridevirtual

Dettach from a peer port.

Reimplemented from gem5::Port.

Definition at line 139 of file signal.hh.

References gem5::SignalSourcePort< State >::sink, and gem5::Port::unbind().

Member Data Documentation

◆ _state

template<typename State >
State gem5::SignalSourcePort< State >::_state
private

◆ sink

template<typename State >
SignalSinkPort<State>* gem5::SignalSourcePort< State >::sink = nullptr
private

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

Generated on Mon Jan 13 2025 04:28:57 for gem5 by doxygen 1.9.8