1 // Copyright 2021 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_BALSA_FRAMER_INTERFACE_H_ 6 #define QUICHE_BALSA_FRAMER_INTERFACE_H_ 7 8 #include <cstddef> 9 10 #include "quiche/common/platform/api/quiche_export.h" 11 12 namespace quiche { 13 14 // A minimal interface supported by BalsaFrame and other framer types. For use 15 // in HttpReader. 16 class QUICHE_EXPORT FramerInterface { 17 public: ~FramerInterface()18 virtual ~FramerInterface() {} 19 virtual size_t ProcessInput(const char* input, size_t length) = 0; 20 }; 21 22 } // namespace quiche 23 24 #endif // QUICHE_BALSA_FRAMER_INTERFACE_H_ 25