OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2016 The WebRTC Project Authors. All rights reserved. | 2 * Copyright 2016 The WebRTC Project Authors. All rights reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 // TODO(hbos): Finish implementation. Tracking bug crbug.com/633550 | 84 // TODO(hbos): Finish implementation. Tracking bug crbug.com/633550 |
85 class RTCIceCandidatePairStats : public RTCStats { | 85 class RTCIceCandidatePairStats : public RTCStats { |
86 public: | 86 public: |
87 WEBRTC_RTCSTATS_DECL(); | 87 WEBRTC_RTCSTATS_DECL(); |
88 | 88 |
89 RTCIceCandidatePairStats(const std::string& id, int64_t timestamp_us); | 89 RTCIceCandidatePairStats(const std::string& id, int64_t timestamp_us); |
90 RTCIceCandidatePairStats(std::string&& id, int64_t timestamp_us); | 90 RTCIceCandidatePairStats(std::string&& id, int64_t timestamp_us); |
91 RTCIceCandidatePairStats(const RTCIceCandidatePairStats& other); | 91 RTCIceCandidatePairStats(const RTCIceCandidatePairStats& other); |
92 ~RTCIceCandidatePairStats() override; | 92 ~RTCIceCandidatePairStats() override; |
93 | 93 |
| 94 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550, 653873 |
94 RTCStatsMember<std::string> transport_id; | 95 RTCStatsMember<std::string> transport_id; |
95 RTCStatsMember<std::string> local_candidate_id; | 96 RTCStatsMember<std::string> local_candidate_id; |
96 RTCStatsMember<std::string> remote_candidate_id; | 97 RTCStatsMember<std::string> remote_candidate_id; |
97 // TODO(hbos): Support enum types? | 98 // TODO(hbos): Support enum types? |
98 // "RTCStatsMember<RTCStatsIceCandidatePairState>"? | 99 // "RTCStatsMember<RTCStatsIceCandidatePairState>"? |
| 100 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
99 RTCStatsMember<std::string> state; | 101 RTCStatsMember<std::string> state; |
| 102 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
100 RTCStatsMember<uint64_t> priority; | 103 RTCStatsMember<uint64_t> priority; |
| 104 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
101 RTCStatsMember<bool> nominated; | 105 RTCStatsMember<bool> nominated; |
| 106 // TODO(hbos): Collected by |RTCStatsCollector| but different than the spec. |
| 107 // crbug.com/633550 |
102 RTCStatsMember<bool> writable; | 108 RTCStatsMember<bool> writable; |
| 109 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
103 RTCStatsMember<bool> readable; | 110 RTCStatsMember<bool> readable; |
104 RTCStatsMember<uint64_t> bytes_sent; | 111 RTCStatsMember<uint64_t> bytes_sent; |
105 RTCStatsMember<uint64_t> bytes_received; | 112 RTCStatsMember<uint64_t> bytes_received; |
| 113 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
106 RTCStatsMember<double> total_rtt; | 114 RTCStatsMember<double> total_rtt; |
| 115 // TODO(hbos): Collected by |RTCStatsCollector| but different than the spec. |
| 116 // crbug.com/633550 |
107 RTCStatsMember<double> current_rtt; | 117 RTCStatsMember<double> current_rtt; |
| 118 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
108 RTCStatsMember<double> available_outgoing_bitrate; | 119 RTCStatsMember<double> available_outgoing_bitrate; |
| 120 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
109 RTCStatsMember<double> available_incoming_bitrate; | 121 RTCStatsMember<double> available_incoming_bitrate; |
| 122 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
110 RTCStatsMember<uint64_t> requests_received; | 123 RTCStatsMember<uint64_t> requests_received; |
111 RTCStatsMember<uint64_t> requests_sent; | 124 RTCStatsMember<uint64_t> requests_sent; |
112 RTCStatsMember<uint64_t> responses_received; | 125 RTCStatsMember<uint64_t> responses_received; |
113 RTCStatsMember<uint64_t> responses_sent; | 126 RTCStatsMember<uint64_t> responses_sent; |
| 127 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
114 RTCStatsMember<uint64_t> retransmissions_received; | 128 RTCStatsMember<uint64_t> retransmissions_received; |
| 129 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
115 RTCStatsMember<uint64_t> retransmissions_sent; | 130 RTCStatsMember<uint64_t> retransmissions_sent; |
| 131 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
116 RTCStatsMember<uint64_t> consent_requests_received; | 132 RTCStatsMember<uint64_t> consent_requests_received; |
| 133 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
117 RTCStatsMember<uint64_t> consent_requests_sent; | 134 RTCStatsMember<uint64_t> consent_requests_sent; |
| 135 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
118 RTCStatsMember<uint64_t> consent_responses_received; | 136 RTCStatsMember<uint64_t> consent_responses_received; |
| 137 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/633550 |
119 RTCStatsMember<uint64_t> consent_responses_sent; | 138 RTCStatsMember<uint64_t> consent_responses_sent; |
120 }; | 139 }; |
121 | 140 |
122 // https://w3c.github.io/webrtc-stats/#icecandidate-dict* | 141 // https://w3c.github.io/webrtc-stats/#icecandidate-dict* |
123 // TODO(hbos): Finish implementation. Tracking bug crbug.com/632723 | 142 // TODO(hbos): |RTCStatsCollector| only collects candidates that are part of |
| 143 // ice candidate pairs, but there could be candidates not paired with anything. |
| 144 // crbug.com/632723 |
124 class RTCIceCandidateStats : public RTCStats { | 145 class RTCIceCandidateStats : public RTCStats { |
125 public: | 146 public: |
126 WEBRTC_RTCSTATS_DECL(); | 147 WEBRTC_RTCSTATS_DECL(); |
127 | 148 |
128 RTCIceCandidateStats(const RTCIceCandidateStats& other); | 149 RTCIceCandidateStats(const RTCIceCandidateStats& other); |
129 ~RTCIceCandidateStats() override; | 150 ~RTCIceCandidateStats() override; |
130 | 151 |
131 RTCStatsMember<std::string> ip; | 152 RTCStatsMember<std::string> ip; |
132 RTCStatsMember<int32_t> port; | 153 RTCStatsMember<int32_t> port; |
133 RTCStatsMember<std::string> protocol; | 154 RTCStatsMember<std::string> protocol; |
134 // TODO(hbos): Support enum types? "RTCStatsMember<RTCIceCandidateType>"? | 155 // TODO(hbos): Support enum types? "RTCStatsMember<RTCIceCandidateType>"? |
135 RTCStatsMember<std::string> candidate_type; | 156 RTCStatsMember<std::string> candidate_type; |
136 RTCStatsMember<int32_t> priority; | 157 RTCStatsMember<int32_t> priority; |
| 158 // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/632723 |
137 RTCStatsMember<std::string> url; | 159 RTCStatsMember<std::string> url; |
138 | 160 |
139 protected: | 161 protected: |
140 RTCIceCandidateStats(const std::string& id, int64_t timestamp_us); | 162 RTCIceCandidateStats(const std::string& id, int64_t timestamp_us); |
141 RTCIceCandidateStats(std::string&& id, int64_t timestamp_us); | 163 RTCIceCandidateStats(std::string&& id, int64_t timestamp_us); |
142 }; | 164 }; |
143 | 165 |
144 // In the spec both local and remote varieties are of type RTCIceCandidateStats. | 166 // In the spec both local and remote varieties are of type RTCIceCandidateStats. |
145 // But here we define them as subclasses of |RTCIceCandidateStats| because the | 167 // But here we define them as subclasses of |RTCIceCandidateStats| because the |
146 // |kType| need to be different ("RTCStatsType type") in the local/remote case. | 168 // |kType| need to be different ("RTCStatsType type") in the local/remote case. |
(...skipping 18 matching lines...) Expand all Loading... |
165 // TODO(hbos): Finish implementation. Tracking bug crbug.com/636818 | 187 // TODO(hbos): Finish implementation. Tracking bug crbug.com/636818 |
166 class RTCPeerConnectionStats final : public RTCStats { | 188 class RTCPeerConnectionStats final : public RTCStats { |
167 public: | 189 public: |
168 WEBRTC_RTCSTATS_DECL(); | 190 WEBRTC_RTCSTATS_DECL(); |
169 | 191 |
170 RTCPeerConnectionStats(const std::string& id, int64_t timestamp_us); | 192 RTCPeerConnectionStats(const std::string& id, int64_t timestamp_us); |
171 RTCPeerConnectionStats(std::string&& id, int64_t timestamp_us); | 193 RTCPeerConnectionStats(std::string&& id, int64_t timestamp_us); |
172 RTCPeerConnectionStats(const RTCPeerConnectionStats& other); | 194 RTCPeerConnectionStats(const RTCPeerConnectionStats& other); |
173 ~RTCPeerConnectionStats() override; | 195 ~RTCPeerConnectionStats() override; |
174 | 196 |
| 197 // TODO(hbos): Collected by |RTCStatsCollector| but different than the spec. |
| 198 // crbug.com/636818 |
175 RTCStatsMember<uint32_t> data_channels_opened; | 199 RTCStatsMember<uint32_t> data_channels_opened; |
| 200 // TODO(hbos): Collected by |RTCStatsCollector| but different than the spec. |
| 201 // crbug.com/636818 |
176 RTCStatsMember<uint32_t> data_channels_closed; | 202 RTCStatsMember<uint32_t> data_channels_closed; |
177 }; | 203 }; |
178 | 204 |
179 // https://w3c.github.io/webrtc-stats/#transportstats-dict* | 205 // https://w3c.github.io/webrtc-stats/#transportstats-dict* |
180 class RTCTransportStats final : public RTCStats { | 206 class RTCTransportStats final : public RTCStats { |
181 public: | 207 public: |
182 WEBRTC_RTCSTATS_DECL(); | 208 WEBRTC_RTCSTATS_DECL(); |
183 | 209 |
184 RTCTransportStats(const std::string& id, int64_t timestamp_us); | 210 RTCTransportStats(const std::string& id, int64_t timestamp_us); |
185 RTCTransportStats(std::string&& id, int64_t timestamp_us); | 211 RTCTransportStats(std::string&& id, int64_t timestamp_us); |
186 RTCTransportStats(const RTCTransportStats& other); | 212 RTCTransportStats(const RTCTransportStats& other); |
187 ~RTCTransportStats() override; | 213 ~RTCTransportStats() override; |
188 | 214 |
189 RTCStatsMember<uint64_t> bytes_sent; | 215 RTCStatsMember<uint64_t> bytes_sent; |
190 RTCStatsMember<uint64_t> bytes_received; | 216 RTCStatsMember<uint64_t> bytes_received; |
191 RTCStatsMember<std::string> rtcp_transport_stats_id; | 217 RTCStatsMember<std::string> rtcp_transport_stats_id; |
192 RTCStatsMember<bool> active_connection; | 218 RTCStatsMember<bool> active_connection; |
193 RTCStatsMember<std::string> selected_candidate_pair_id; | 219 RTCStatsMember<std::string> selected_candidate_pair_id; |
194 RTCStatsMember<std::string> local_certificate_id; | 220 RTCStatsMember<std::string> local_certificate_id; |
195 RTCStatsMember<std::string> remote_certificate_id; | 221 RTCStatsMember<std::string> remote_certificate_id; |
196 }; | 222 }; |
197 | 223 |
198 } // namespace webrtc | 224 } // namespace webrtc |
199 | 225 |
200 #endif // WEBRTC_API_STATS_RTCSTATS_OBJECTS_H_ | 226 #endif // WEBRTC_API_STATS_RTCSTATS_OBJECTS_H_ |
OLD | NEW |