10529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 20529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch// Use of this source code is governed by a BSD-style license that can be 30529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch// found in the LICENSE file. 40529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 50529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch#ifndef NET_QUIC_TEST_TOOLS_QUIC_FLOW_CONTROLLER_PEER_H_ 60529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch#define NET_QUIC_TEST_TOOLS_QUIC_FLOW_CONTROLLER_PEER_H_ 70529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 80529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch#include "net/quic/quic_protocol.h" 90529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 100529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochnamespace net { 110529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 120529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochclass QuicFlowController; 130529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 140529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochnamespace test { 150529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 160529e5d033099cbfc42635f6f6183833b09dff6eBen Murdochclass QuicFlowControllerPeer { 170529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch public: 180529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch static void SetSendWindowOffset(QuicFlowController* flow_controller, 190529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch uint64 offset); 200529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 210529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch static void SetReceiveWindowOffset(QuicFlowController* flow_controller, 220529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch uint64 offset); 230529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 240529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch static void SetMaxReceiveWindow(QuicFlowController* flow_controller, 250529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch uint64 window_size); 260529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 270529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch static uint64 SendWindowOffset(QuicFlowController* flow_controller); 280529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 290529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch static uint64 SendWindowSize(QuicFlowController* flow_controller); 300529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 310529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch static uint64 ReceiveWindowOffset(QuicFlowController* flow_controller); 320529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 330529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch static uint64 ReceiveWindowSize(QuicFlowController* flow_controller); 340529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 350529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch private: 360529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch DISALLOW_COPY_AND_ASSIGN(QuicFlowControllerPeer); 370529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch}; 380529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 390529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch} // namespace test 400529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch} // namespace net 410529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch 420529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch#endif // NET_QUIC_TEST_TOOLS_QUIC_FLOW_CONTROLLER_PEER_H_ 43