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

Side by Side Diff: mojo/common/tracing_impl.cc

Issue 2014043002: Make TracingImpl take a Shell* and args, instead of an ApplicationImpl*. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 7 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 | « mojo/common/tracing_impl.h ('k') | services/dart/content_handler_app.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 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 #include "mojo/common/tracing_impl.h" 5 #include "mojo/common/tracing_impl.h"
6 6
7 #include <algorithm>
8
7 #include "base/trace_event/trace_event_impl.h" 9 #include "base/trace_event/trace_event_impl.h"
8 #include "mojo/public/cpp/application/application_impl.h" 10 #include "mojo/public/cpp/application/application_impl.h"
9 #include "mojo/public/cpp/application/connect.h" 11 #include "mojo/public/cpp/application/connect.h"
10 #include "mojo/public/cpp/bindings/interface_handle.h" 12 #include "mojo/public/cpp/bindings/interface_handle.h"
11 #include "mojo/public/cpp/bindings/interface_request.h" 13 #include "mojo/public/cpp/bindings/interface_request.h"
12 #include "mojo/services/tracing/interfaces/trace_provider_registry.mojom.h" 14 #include "mojo/services/tracing/interfaces/trace_provider_registry.mojom.h"
13 #include "mojo/services/tracing/interfaces/tracing.mojom.h" 15 #include "mojo/services/tracing/interfaces/tracing.mojom.h"
14 16
15 namespace mojo { 17 namespace mojo {
16 18
17 TracingImpl::TracingImpl() {} 19 TracingImpl::TracingImpl() {}
18 20
19 TracingImpl::~TracingImpl() {} 21 TracingImpl::~TracingImpl() {}
20 22
21 void TracingImpl::Initialize(ApplicationImpl* app) { 23 void TracingImpl::Initialize(Shell* shell,
24 const std::vector<std::string>* args) {
22 tracing::TraceProviderRegistryPtr registry; 25 tracing::TraceProviderRegistryPtr registry;
23 ConnectToService(app->shell(), "mojo:tracing", GetProxy(&registry)); 26 ConnectToService(shell, "mojo:tracing", GetProxy(&registry));
24 27
25 mojo::InterfaceHandle<tracing::TraceProvider> provider; 28 mojo::InterfaceHandle<tracing::TraceProvider> provider;
26 provider_impl_.Bind(GetProxy(&provider)); 29 provider_impl_.Bind(GetProxy(&provider));
27 registry->RegisterTraceProvider(provider.Pass()); 30 registry->RegisterTraceProvider(provider.Pass());
28 31
29 #ifdef NDEBUG 32 #ifdef NDEBUG
30 if (app->HasArg("--early-tracing")) { 33 if (args) {
31 provider_impl_.ForceEnableTracing(); 34 if (std::find(args->begin(), args->end(), "--early-tracing") != args->end())
35 provider_impl_.ForceEnableTracing();
32 } 36 }
33 #else 37 #else
34 provider_impl_.ForceEnableTracing(); 38 provider_impl_.ForceEnableTracing();
35 #endif 39 #endif
36 } 40 }
37 41
38 } // namespace mojo 42 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/common/tracing_impl.h ('k') | services/dart/content_handler_app.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698