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 #ifndef CONTENT_RENDERER_MEDIA_WEBRTC_MEDIA_STREAM_TRACK_METRICS_H_ | 5 #ifndef CONTENT_RENDERER_MEDIA_WEBRTC_MEDIA_STREAM_TRACK_METRICS_H_ |
6 #define CONTENT_RENDERER_MEDIA_WEBRTC_MEDIA_STREAM_TRACK_METRICS_H_ | 6 #define CONTENT_RENDERER_MEDIA_WEBRTC_MEDIA_STREAM_TRACK_METRICS_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include "base/memory/scoped_vector.h" | 10 #include <memory> |
| 11 #include <vector> |
| 12 |
11 #include "base/threading/non_thread_safe.h" | 13 #include "base/threading/non_thread_safe.h" |
12 #include "content/common/content_export.h" | 14 #include "content/common/content_export.h" |
13 #include "third_party/webrtc/api/peerconnectioninterface.h" | 15 #include "third_party/webrtc/api/peerconnectioninterface.h" |
14 | 16 |
15 namespace webrtc { | 17 namespace webrtc { |
16 class MediaStreamInterface; | 18 class MediaStreamInterface; |
17 } | 19 } |
18 | 20 |
19 namespace content { | 21 namespace content { |
20 | 22 |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
83 // is a one-to-one relationship). | 85 // is a one-to-one relationship). |
84 uint64_t MakeUniqueIdImpl(uint64_t pc_id, | 86 uint64_t MakeUniqueIdImpl(uint64_t pc_id, |
85 const std::string& track, | 87 const std::string& track, |
86 StreamType stream_type); | 88 StreamType stream_type); |
87 | 89 |
88 private: | 90 private: |
89 // Make a unique ID for the given track, that is valid while the | 91 // Make a unique ID for the given track, that is valid while the |
90 // track object and the PeerConnection it is attached to both exist. | 92 // track object and the PeerConnection it is attached to both exist. |
91 uint64_t MakeUniqueId(const std::string& track, StreamType stream_type); | 93 uint64_t MakeUniqueId(const std::string& track, StreamType stream_type); |
92 | 94 |
93 typedef ScopedVector<MediaStreamTrackMetricsObserver> ObserverVector; | 95 typedef std::vector<std::unique_ptr<MediaStreamTrackMetricsObserver>> |
| 96 ObserverVector; |
94 ObserverVector observers_; | 97 ObserverVector observers_; |
95 | 98 |
96 webrtc::PeerConnectionInterface::IceConnectionState ice_state_; | 99 webrtc::PeerConnectionInterface::IceConnectionState ice_state_; |
97 }; | 100 }; |
98 | 101 |
99 } // namespace | 102 } // namespace |
100 | 103 |
101 #endif // CONTENT_RENDERER_MEDIA_WEBRTC_MEDIA_STREAM_TRACK_METRICS_H_ | 104 #endif // CONTENT_RENDERER_MEDIA_WEBRTC_MEDIA_STREAM_TRACK_METRICS_H_ |
OLD | NEW |