| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 <cstdio> | 5 #include <cstdio> |
| 6 #include <cstdlib> | 6 #include <cstdlib> |
| 7 #include <deque> | 7 #include <deque> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/at_exit.h" | 10 #include "base/at_exit.h" |
| (...skipping 30 matching lines...) Expand all Loading... |
| 41 double megabits_per_second() { | 41 double megabits_per_second() { |
| 42 double megabits = (byte_data_.back() - byte_data_.front()) * 8 / 1E6; | 42 double megabits = (byte_data_.back() - byte_data_.front()) * 8 / 1E6; |
| 43 return megabits / time_range().InSecondsF(); | 43 return megabits / time_range().InSecondsF(); |
| 44 } | 44 } |
| 45 | 45 |
| 46 double packets_per_second() { | 46 double packets_per_second() { |
| 47 double packets = packet_data_.back()- packet_data_.front(); | 47 double packets = packet_data_.back()- packet_data_.front(); |
| 48 return packets / time_range().InSecondsF(); | 48 return packets / time_range().InSecondsF(); |
| 49 } | 49 } |
| 50 | 50 |
| 51 void Increment(uint64 x) { | 51 void Increment(uint64_t x) { |
| 52 bytes_ += x; | 52 bytes_ += x; |
| 53 packets_ ++; | 53 packets_ ++; |
| 54 } | 54 } |
| 55 | 55 |
| 56 private: | 56 private: |
| 57 uint64 bytes_; | 57 uint64_t bytes_; |
| 58 uint64 packets_; | 58 uint64_t packets_; |
| 59 std::deque<uint64> byte_data_; | 59 std::deque<uint64_t> byte_data_; |
| 60 std::deque<uint64> packet_data_; | 60 std::deque<uint64_t> packet_data_; |
| 61 std::deque<base::TimeTicks> time_data_; | 61 std::deque<base::TimeTicks> time_data_; |
| 62 }; | 62 }; |
| 63 | 63 |
| 64 namespace { | 64 namespace { |
| 65 struct GlobalCounter { | 65 struct GlobalCounter { |
| 66 base::TimeTicks last_printout; | 66 base::TimeTicks last_printout; |
| 67 ByteCounter in_pipe_input_counter; | 67 ByteCounter in_pipe_input_counter; |
| 68 ByteCounter in_pipe_output_counter; | 68 ByteCounter in_pipe_output_counter; |
| 69 ByteCounter out_pipe_input_counter; | 69 ByteCounter out_pipe_input_counter; |
| 70 ByteCounter out_pipe_output_counter; | 70 ByteCounter out_pipe_output_counter; |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 154 } else { | 154 } else { |
| 155 // V1 proxy | 155 // V1 proxy |
| 156 network_type = argv[2]; | 156 network_type = argv[2]; |
| 157 } | 157 } |
| 158 if (local_port < 0 || local_port > 65535 || remote_port < 0 || | 158 if (local_port < 0 || local_port > 65535 || remote_port < 0 || |
| 159 remote_port > 65535) { | 159 remote_port > 65535) { |
| 160 fprintf(stderr, "Port numbers must be between 0 and 65535\n"); | 160 fprintf(stderr, "Port numbers must be between 0 and 65535\n"); |
| 161 exit(1); | 161 exit(1); |
| 162 } | 162 } |
| 163 net::IPEndPoint remote_endpoint(remote_ip_number, | 163 net::IPEndPoint remote_endpoint(remote_ip_number, |
| 164 static_cast<uint16>(remote_port)); | 164 static_cast<uint16_t>(remote_port)); |
| 165 net::IPEndPoint local_endpoint(local_ip_number, | 165 net::IPEndPoint local_endpoint(local_ip_number, |
| 166 static_cast<uint16>(local_port)); | 166 static_cast<uint16_t>(local_port)); |
| 167 scoped_ptr<media::cast::test::PacketPipe> in_pipe, out_pipe; | 167 scoped_ptr<media::cast::test::PacketPipe> in_pipe, out_pipe; |
| 168 scoped_ptr<media::cast::test::InterruptedPoissonProcess> ipp( | 168 scoped_ptr<media::cast::test::InterruptedPoissonProcess> ipp( |
| 169 media::cast::test::DefaultInterruptedPoissonProcess()); | 169 media::cast::test::DefaultInterruptedPoissonProcess()); |
| 170 | 170 |
| 171 if (network_type == "perfect") { | 171 if (network_type == "perfect") { |
| 172 // No action needed. | 172 // No action needed. |
| 173 } else if (network_type == "wifi") { | 173 } else if (network_type == "wifi") { |
| 174 in_pipe = media::cast::test::WifiNetwork().Pass(); | 174 in_pipe = media::cast::test::WifiNetwork().Pass(); |
| 175 out_pipe = media::cast::test::WifiNetwork().Pass(); | 175 out_pipe = media::cast::test::WifiNetwork().Pass(); |
| 176 } else if (network_type == "bad") { | 176 } else if (network_type == "bad") { |
| (...skipping 22 matching lines...) Expand all Loading... |
| 199 remote_endpoint, | 199 remote_endpoint, |
| 200 in_pipe.Pass(), | 200 in_pipe.Pass(), |
| 201 out_pipe.Pass(), | 201 out_pipe.Pass(), |
| 202 NULL)); | 202 NULL)); |
| 203 base::MessageLoop message_loop; | 203 base::MessageLoop message_loop; |
| 204 g_counter.Get().last_printout = base::TimeTicks::Now(); | 204 g_counter.Get().last_printout = base::TimeTicks::Now(); |
| 205 CheckByteCounters(); | 205 CheckByteCounters(); |
| 206 message_loop.Run(); | 206 message_loop.Run(); |
| 207 return 1; | 207 return 1; |
| 208 } | 208 } |
| OLD | NEW |