Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: media/base/video_frame_metadata.cc

Issue 2577563002: Add struct traits for base::Value. (Closed)
Patch Set: rebase Created 3 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « media/base/video_frame_metadata.h ('k') | mojo/common/common_custom_types_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
OLDNEW
« no previous file with comments | « media/base/video_frame_metadata.h ('k') | mojo/common/common_custom_types_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698