OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/lazy_instance.h" | 5 #include "base/lazy_instance.h" |
6 #include "net/base/bandwidth_metrics.h" | 6 #include "net/base/bandwidth_metrics.h" |
7 | 7 |
8 static base::LazyInstance<net::BandwidthMetrics> g_bandwidth_metrics( | 8 static base::LazyInstance<net::BandwidthMetrics> g_bandwidth_metrics = |
9 base::LINKER_INITIALIZED); | 9 LAZY_INSTANCE_INITIALIZER; |
10 | 10 |
11 namespace net { | 11 namespace net { |
12 | 12 |
13 ScopedBandwidthMetrics::ScopedBandwidthMetrics() | 13 ScopedBandwidthMetrics::ScopedBandwidthMetrics() |
14 : started_(false) { | 14 : started_(false) { |
15 } | 15 } |
16 | 16 |
17 ScopedBandwidthMetrics::~ScopedBandwidthMetrics() { | 17 ScopedBandwidthMetrics::~ScopedBandwidthMetrics() { |
18 if (started_) | 18 if (started_) |
19 g_bandwidth_metrics.Get().StopStream(); | 19 g_bandwidth_metrics.Get().StopStream(); |
20 } | 20 } |
21 | 21 |
22 void ScopedBandwidthMetrics::StartStream() { | 22 void ScopedBandwidthMetrics::StartStream() { |
23 started_ = true; | 23 started_ = true; |
24 g_bandwidth_metrics.Get().StartStream(); | 24 g_bandwidth_metrics.Get().StartStream(); |
25 } | 25 } |
26 | 26 |
27 void ScopedBandwidthMetrics::StopStream() { | 27 void ScopedBandwidthMetrics::StopStream() { |
28 started_ = false; | 28 started_ = false; |
29 g_bandwidth_metrics.Get().StopStream(); | 29 g_bandwidth_metrics.Get().StopStream(); |
30 } | 30 } |
31 | 31 |
32 void ScopedBandwidthMetrics::RecordBytes(int bytes) { | 32 void ScopedBandwidthMetrics::RecordBytes(int bytes) { |
33 g_bandwidth_metrics.Get().RecordBytes(bytes); | 33 g_bandwidth_metrics.Get().RecordBytes(bytes); |
34 } | 34 } |
35 | 35 |
36 } // namespace net | 36 } // namespace net |
OLD | NEW |