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