OLD | NEW |
| (Empty) |
1 // Copyright (c) 2011 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 #include "base/lazy_instance.h" | |
6 #include "net/base/bandwidth_metrics.h" | |
7 | |
8 static base::LazyInstance<net::BandwidthMetrics> g_bandwidth_metrics = | |
9 LAZY_INSTANCE_INITIALIZER; | |
10 | |
11 namespace net { | |
12 | |
13 ScopedBandwidthMetrics::ScopedBandwidthMetrics() | |
14 : started_(false) { | |
15 } | |
16 | |
17 ScopedBandwidthMetrics::~ScopedBandwidthMetrics() { | |
18 if (started_) | |
19 g_bandwidth_metrics.Get().StopStream(); | |
20 } | |
21 | |
22 void ScopedBandwidthMetrics::StartStream() { | |
23 started_ = true; | |
24 g_bandwidth_metrics.Get().StartStream(); | |
25 } | |
26 | |
27 void ScopedBandwidthMetrics::StopStream() { | |
28 started_ = false; | |
29 g_bandwidth_metrics.Get().StopStream(); | |
30 } | |
31 | |
32 void ScopedBandwidthMetrics::RecordBytes(int bytes) { | |
33 g_bandwidth_metrics.Get().RecordBytes(bytes); | |
34 } | |
35 | |
36 } // namespace net | |
OLD | NEW |