Chromium Code Reviews| Index: base/trace_event/event_name_filter.cc |
| diff --git a/base/trace_event/event_name_filter.cc b/base/trace_event/event_name_filter.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..3697baf28e56d35b7adff69ad2546d9d2eabb6eb |
| --- /dev/null |
| +++ b/base/trace_event/event_name_filter.cc |
| @@ -0,0 +1,35 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#include "base/trace_event/event_name_filter.h" |
| + |
| +#include "base/debug/stack_trace.h" |
| +#include "base/trace_event/trace_event_impl.h" |
| + |
| +namespace base { |
| +namespace trace_event { |
| + |
| +// static |
| +const char EventNameFilter::kName[] = "event_whitelist_predicate"; |
| + |
| +EventNameFilter::EventNameFilter() |
| + : event_names_whitelist_(new EventNamesWhitelist()) {} |
| + |
| +EventNameFilter::~EventNameFilter() {} |
| + |
| +void EventNameFilter::SetWhitelistedEventNames( |
| + std::unique_ptr<EventNamesWhitelist> event_names_whitelist) { |
| + event_names_whitelist_ = std::move(event_names_whitelist); |
| +} |
| + |
| +bool EventNameFilter::FilterTraceEvent(const TraceEvent& trace_event) const { |
| + return event_names_whitelist_->count(trace_event.name()) != 0; |
|
ssid
2016/11/16 10:19:44
This is not thread safe. All threads will access t
|
| +} |
| + |
| +const char* EventNameFilter::name() const { |
| + return kName; |
| +} |
| + |
| +} // namespace trace_event |
| +} // namespace base |