gfe-relnote: In QUIC, add largest_packets_peer_knows_is_acked_ and largest_sent_packets_ which are necessary to sent_packet_manager and unacked_packet_map, respectively, for multiple packet number support. Not used yet. Not protected.

PiperOrigin-RevId: 239787104
Change-Id: I9955881f09eb4b70a740a913fcd4ad7bc8fe863d
diff --git a/quic/core/quic_unacked_packet_map.h b/quic/core/quic_unacked_packet_map.h
index 9245589..1d4f00c 100644
--- a/quic/core/quic_unacked_packet_map.h
+++ b/quic/core/quic_unacked_packet_map.h
@@ -204,11 +204,17 @@
   QuicPacketNumber GetLargestSentRetransmittableOfPacketNumberSpace(
       PacketNumberSpace packet_number_space) const;
 
+  // Returns largest sent packet number of |encryption_level|.
+  QuicPacketNumber GetLargestSentPacketOfPacketNumberSpace(
+      EncryptionLevel encryption_level) const;
+
   // Called to start/stop letting session decide what to write.
   void SetSessionDecideWhatToWrite(bool session_decides_what_to_write);
 
   void SetSessionNotifier(SessionNotifierInterface* session_notifier);
 
+  void EnableMultiplePacketNumberSpacesSupport();
+
   bool session_decides_what_to_write() const {
     return session_decides_what_to_write_;
   }
@@ -217,6 +223,10 @@
 
   Perspective perspective() const { return perspective_; }
 
+  bool supports_multiple_packet_number_spaces() const {
+    return supports_multiple_packet_number_spaces_;
+  }
+
  private:
   friend class test::QuicUnackedPacketMapPeer;
 
@@ -249,6 +259,8 @@
   const Perspective perspective_;
 
   QuicPacketNumber largest_sent_packet_;
+  // Only used when supports_multiple_packet_number_spaces_ is true.
+  QuicPacketNumber largest_sent_packets_[NUM_PACKET_NUMBER_SPACES];
   // The largest sent packet we expect to receive an ack for.
   // TODO(fayang): Remove largest_sent_retransmittable_packet_ when deprecating
   // quic_use_uber_loss_algorithm.
@@ -296,6 +308,9 @@
 
   // Latched value of quic_use_uber_loss_algorithm.
   const bool use_uber_loss_algorithm_;
+
+  // If true, supports multiple packet number spaces.
+  bool supports_multiple_packet_number_spaces_;
 };
 
 }  // namespace quic