| // Copyright (c) 2019 The Chromium Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | #ifndef QUICHE_QUIC_QBONE_QBONE_PACKET_WRITER_H_ | 
 | #define QUICHE_QUIC_QBONE_QBONE_PACKET_WRITER_H_ | 
 |  | 
 | #include <cstring> | 
 |  | 
 | namespace quic { | 
 |  | 
 | // QbonePacketWriter expects only one function to be defined, | 
 | // WritePacketToNetwork, which is called when a packet is received via QUIC | 
 | // and should be sent out on the network.  This is the complete packet, | 
 | // and not just a fragment. | 
 | class QbonePacketWriter { | 
 |  public: | 
 |   virtual ~QbonePacketWriter() {} | 
 |   virtual void WritePacketToNetwork(const char* packet, size_t size) = 0; | 
 | }; | 
 |  | 
 | }  // namespace quic | 
 |  | 
 | #endif  // QUICHE_QUIC_QBONE_QBONE_PACKET_WRITER_H_ |