OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "media/base/video_frame_metadata.h" | 5 #include "media/base/video_frame_metadata.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 if (!dictionary_.GetWithoutPathExpansion(ToInternalKey(key), &result)) | 144 if (!dictionary_.GetWithoutPathExpansion(ToInternalKey(key), &result)) |
145 return nullptr; | 145 return nullptr; |
146 return result; | 146 return result; |
147 } | 147 } |
148 | 148 |
149 bool VideoFrameMetadata::IsTrue(Key key) const { | 149 bool VideoFrameMetadata::IsTrue(Key key) const { |
150 bool value = false; | 150 bool value = false; |
151 return GetBoolean(key, &value) && value; | 151 return GetBoolean(key, &value) && value; |
152 } | 152 } |
153 | 153 |
154 void VideoFrameMetadata::MergeInternalValuesInto( | 154 std::unique_ptr<base::DictionaryValue> VideoFrameMetadata::CopyInternalValues() |
155 base::DictionaryValue* out) const { | 155 const { |
156 out->MergeDictionary(&dictionary_); | 156 return dictionary_.CreateDeepCopy(); |
157 } | 157 } |
158 | 158 |
159 void VideoFrameMetadata::MergeInternalValuesFrom( | 159 void VideoFrameMetadata::MergeInternalValuesFrom( |
160 const base::DictionaryValue& in) { | 160 const base::DictionaryValue& in) { |
161 dictionary_.MergeDictionary(&in); | 161 dictionary_.MergeDictionary(&in); |
162 } | 162 } |
163 | 163 |
164 void VideoFrameMetadata::MergeMetadataFrom( | 164 void VideoFrameMetadata::MergeMetadataFrom( |
165 const VideoFrameMetadata* metadata_source) { | 165 const VideoFrameMetadata* metadata_source) { |
166 dictionary_.MergeDictionary(&metadata_source->dictionary_); | 166 dictionary_.MergeDictionary(&metadata_source->dictionary_); |
167 } | 167 } |
168 | 168 |
169 const base::BinaryValue* VideoFrameMetadata::GetBinaryValue(Key key) const { | 169 const base::BinaryValue* VideoFrameMetadata::GetBinaryValue(Key key) const { |
170 const base::Value* internal_value = nullptr; | 170 const base::Value* internal_value = nullptr; |
171 if (dictionary_.GetWithoutPathExpansion(ToInternalKey(key), | 171 if (dictionary_.GetWithoutPathExpansion(ToInternalKey(key), |
172 &internal_value) && | 172 &internal_value) && |
173 internal_value->GetType() == base::Value::Type::BINARY) { | 173 internal_value->GetType() == base::Value::Type::BINARY) { |
174 return static_cast<const base::BinaryValue*>(internal_value); | 174 return static_cast<const base::BinaryValue*>(internal_value); |
175 } | 175 } |
176 return nullptr; | 176 return nullptr; |
177 } | 177 } |
178 | 178 |
179 } // namespace media | 179 } // namespace media |
OLD | NEW |