1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef QUICHE_QUIC_CORE_QUIC_PROCESS_PACKET_INTERFACE_H_
6 #define QUICHE_QUIC_CORE_QUIC_PROCESS_PACKET_INTERFACE_H_
7 
8 #include "net/third_party/quiche/src/quic/core/quic_packets.h"
9 #include "net/third_party/quiche/src/quic/platform/api/quic_socket_address.h"
10 
11 namespace quic {
12 
13 // A class to process each incoming packet.
14 class QUIC_NO_EXPORT ProcessPacketInterface {
15  public:
~ProcessPacketInterface()16   virtual ~ProcessPacketInterface() {}
17   virtual void ProcessPacket(const QuicSocketAddress& self_address,
18                              const QuicSocketAddress& peer_address,
19                              const QuicReceivedPacket& packet) = 0;
20 };
21 
22 }  // namespace quic
23 
24 #endif  // QUICHE_QUIC_CORE_QUIC_PROCESS_PACKET_INTERFACE_H_
25