blob: aec3a8fac89565a5be572caee0dd13dd1be57a42 [file] [log] [blame]
wubf975eac2019-08-19 19:41:01 -07001// Copyright (c) 2019 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_QBONE_QBONE_CLIENT_INTERFACE_H_
6#define QUICHE_QUIC_QBONE_QBONE_CLIENT_INTERFACE_H_
7
8#include <cstdint>
9
dmcardled70b99e2019-12-12 09:52:39 -080010#include "net/third_party/quiche/src/common/platform/api/quiche_string_piece.h"
wubf975eac2019-08-19 19:41:01 -070011
12namespace quic {
13
14// An interface that includes methods to interact with a QBONE client.
15class QboneClientInterface {
16 public:
17 virtual ~QboneClientInterface() {}
18 // Accepts a given packet from the network and sends the packet down to the
19 // QBONE connection.
dmcardled70b99e2019-12-12 09:52:39 -080020 virtual void ProcessPacketFromNetwork(quiche::QuicheStringPiece packet) = 0;
wubf975eac2019-08-19 19:41:01 -070021};
22
23} // namespace quic
24
25#endif // QUICHE_QUIC_QBONE_QBONE_CLIENT_INTERFACE_H_