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

Side by Side Diff: base/trace_event/trace_config.cc

Issue 2549103003: tracing: split trace event filter classes out of TraceLog (Closed)
Patch Set: Add BASE_EXPORT Created 4 years 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 | « base/trace_event/trace_config.h ('k') | base/trace_event/trace_config_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 (c) 2015 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 "base/trace_event/trace_config.h" 5 #include "base/trace_event/trace_config.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 void TraceConfig::EventFilterConfig::AddExcludedCategory( 162 void TraceConfig::EventFilterConfig::AddExcludedCategory(
163 const std::string& category) { 163 const std::string& category) {
164 excluded_categories_.push_back(category); 164 excluded_categories_.push_back(category);
165 } 165 }
166 166
167 void TraceConfig::EventFilterConfig::SetArgs( 167 void TraceConfig::EventFilterConfig::SetArgs(
168 std::unique_ptr<base::DictionaryValue> args) { 168 std::unique_ptr<base::DictionaryValue> args) {
169 args_ = std::move(args); 169 args_ = std::move(args);
170 } 170 }
171 171
172 bool TraceConfig::EventFilterConfig::GetArgAsSet(
173 const char* key,
174 std::unordered_set<std::string>* out_set) const {
175 const ListValue* list = nullptr;
176 if (!args_->GetList(key, &list))
177 return false;
178 for (size_t i = 0; i < list->GetSize(); ++i) {
179 std::string value;
180 if (list->GetString(i, &value))
181 out_set->insert(value);
182 }
183 return true;
184 }
185
172 bool TraceConfig::EventFilterConfig::IsCategoryGroupEnabled( 186 bool TraceConfig::EventFilterConfig::IsCategoryGroupEnabled(
173 const char* category_group_name) const { 187 const char* category_group_name) const {
174 CStringTokenizer category_group_tokens( 188 CStringTokenizer category_group_tokens(
175 category_group_name, category_group_name + strlen(category_group_name), 189 category_group_name, category_group_name + strlen(category_group_name),
176 ","); 190 ",");
177 while (category_group_tokens.GetNext()) { 191 while (category_group_tokens.GetNext()) {
178 std::string category_group_token = category_group_tokens.token(); 192 std::string category_group_token = category_group_tokens.token();
179 193
180 for (const auto& excluded_category : excluded_categories_) { 194 for (const auto& excluded_category : excluded_categories_) {
181 if (base::MatchPattern(category_group_token, excluded_category)) { 195 if (base::MatchPattern(category_group_token, excluded_category)) {
(...skipping 667 matching lines...) Expand 10 before | Expand all | Expand 10 after
849 StringPiece str) { 863 StringPiece str) {
850 return str.empty() || str.front() == ' ' || str.back() == ' '; 864 return str.empty() || str.front() == ' ' || str.back() == ' ';
851 } 865 }
852 866
853 bool TraceConfig::HasIncludedPatterns() const { 867 bool TraceConfig::HasIncludedPatterns() const {
854 return !included_categories_.empty(); 868 return !included_categories_.empty();
855 } 869 }
856 870
857 } // namespace trace_event 871 } // namespace trace_event
858 } // namespace base 872 } // namespace base
OLDNEW
« no previous file with comments | « base/trace_event/trace_config.h ('k') | base/trace_event/trace_config_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698