|
gem5
|
#include <packet_queue.hh>
Public Member Functions | |
| RespPacketQueue (EventManager &_em, SlavePort &_slavePort, const std::string _label="RespPacketQueue") | |
| Create a response packet queue, linked to an event manager, a slave port, and a label that will be used for functional print request packets. More... | |
| virtual | ~RespPacketQueue () |
| const std::string | name () const |
| Provide a name to simplify debugging. More... | |
| bool | sendTiming (PacketPtr pkt) |
| Send a packet using the appropriate method for the specific subclass (reuest, response or snoop response). More... | |
Public Member Functions inherited from PacketQueue | |
| size_t | size () const |
| Get the size of the queue. More... | |
| Tick | deferredPacketReadyTime () const |
| Get the next packet ready time. More... | |
| bool | hasAddr (Addr addr) const |
| Check if a packets address exists in the queue. More... | |
| bool | checkFunctional (PacketPtr pkt) |
| Check the list of buffered packets against the supplied functional request. More... | |
| void | schedSendEvent (Tick when) |
| Schedule a send event if we are not already waiting for a retry. More... | |
| void | schedSendTiming (PacketPtr pkt, Tick when, bool force_order=false) |
| Add a packet to the transmit list, and schedule a send event. More... | |
| void | retry () |
| Retry sending a packet from the queue. More... | |
| void | disableSanityCheck () |
| This allows a user to explicitly disable the sanity check on the size of the transmitList, which is enabled by default. More... | |
| DrainState | drain () override |
| Notify an object that it needs to drain its state. More... | |
Public Member Functions inherited from Drainable | |
| DrainState | drainState () const |
| Return the current drain state of an object. More... | |
| virtual void | notifyFork () |
| Notify a child process of a fork. More... | |
Protected Attributes | |
| SlavePort & | slavePort |
Protected Attributes inherited from PacketQueue | |
| const std::string | label |
| Label to use for print request packets label stack. More... | |
| bool | waitingOnRetry |
| Remember whether we're awaiting a retry. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from PacketQueue | |
| bool | deferredPacketReady () const |
| Check whether we have a packet ready to go on the transmit list. More... | |
| virtual void | sendDeferredPacket () |
| Attempt to send a packet. More... | |
| PacketQueue (EventManager &_em, const std::string &_label, bool disable_sanity_check=false) | |
| Create a packet queue, linked to an event manager, and a label that will be used for functional print request packets. More... | |
| virtual | ~PacketQueue () |
| Virtual desctructor since the class may be used as a base class. More... | |
Protected Member Functions inherited from Drainable | |
| Drainable () | |
| virtual | ~Drainable () |
| virtual void | drainResume () |
| Resume execution after a successful drain. More... | |
| void | signalDrainDone () const |
| Signal that an object is drained. More... | |
Definition at line 271 of file packet_queue.hh.
| RespPacketQueue::RespPacketQueue | ( | EventManager & | _em, |
| SlavePort & | _slavePort, | ||
| const std::string | _label = "RespPacketQueue" |
||
| ) |
Create a response packet queue, linked to an event manager, a slave port, and a label that will be used for functional print request packets.
| _em | Event manager used for scheduling this queue |
| _slavePort | Slave port used to send the packets |
| _label | Label to push on the label stack for print request packets |
Definition at line 263 of file packet_queue.cc.
|
inlinevirtual |
Definition at line 292 of file packet_queue.hh.
|
inlinevirtual |
Provide a name to simplify debugging.
Implements PacketQueue.
Definition at line 294 of file packet_queue.hh.
References PacketQueue::label, Port::name(), and slavePort.
|
virtual |
Send a packet using the appropriate method for the specific subclass (reuest, response or snoop response).
Implements PacketQueue.
Definition at line 270 of file packet_queue.cc.
References SlavePort::sendTimingResp(), and slavePort.
|
protected |
Definition at line 276 of file packet_queue.hh.
Referenced by name(), and sendTiming().