class SimpleTimingPort : public QueuedSlavePort
{
- protected:
+ private:
- /** The packet queue used to store outgoing responses. */
- SlavePacketQueue queue;
+ /**
+ * The packet queue used to store outgoing responses. Note that
+ * the queue is made private and that we avoid overloading the
+ * name used in the QueuedSlavePort. Access is provided through
+ * the queue reference in the base class.
+ */
+ SlavePacketQueue queueImpl;
+
+ protected:
/** Implemented using recvAtomic(). */
void recvFunctional(PacketPtr pkt);
virtual Tick recvAtomic(PacketPtr pkt) = 0;
+ /**
+ * @todo this is a temporary workaround until the 4-phase code is committed.
+ * upstream caches need this packet until true is returned, so hold it for
+ * deletion until a subsequent call
+ */
+ std::vector<PacketPtr> pendingDelete;
+
+
public:
/**