OLD | NEW |
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 #ifndef CHROMECAST_SHELL_BROWSER_CAST_BROWSER_MAIN_PARTS_H_ | 5 #ifndef CHROMECAST_SHELL_BROWSER_CAST_BROWSER_MAIN_PARTS_H_ |
6 #define CHROMECAST_SHELL_BROWSER_CAST_BROWSER_MAIN_PARTS_H_ | 6 #define CHROMECAST_SHELL_BROWSER_CAST_BROWSER_MAIN_PARTS_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
11 #include "content/public/browser/browser_main_parts.h" | 11 #include "content/public/browser/browser_main_parts.h" |
12 | 12 |
13 namespace content { | 13 namespace content { |
14 struct MainFunctionParams; | 14 struct MainFunctionParams; |
15 } | 15 } |
16 | 16 |
17 namespace chromecast { | 17 namespace chromecast { |
18 | |
19 class CastService; | |
20 | |
21 namespace metrics { | |
22 class CastMetricsServiceClient; | |
23 } // namespace metrics | |
24 | |
25 namespace shell { | 18 namespace shell { |
26 | 19 class CastBrowserProcess; |
27 class CastBrowserContext; | |
28 class RemoteDebuggingServer; | |
29 class URLRequestContextFactory; | 20 class URLRequestContextFactory; |
30 | 21 |
31 class CastBrowserMainParts : public content::BrowserMainParts { | 22 class CastBrowserMainParts : public content::BrowserMainParts { |
32 public: | 23 public: |
33 CastBrowserMainParts( | 24 CastBrowserMainParts( |
34 const content::MainFunctionParams& parameters, | 25 const content::MainFunctionParams& parameters, |
35 URLRequestContextFactory* url_request_context_factory); | 26 URLRequestContextFactory* url_request_context_factory); |
36 virtual ~CastBrowserMainParts(); | 27 virtual ~CastBrowserMainParts(); |
37 | 28 |
38 // content::BrowserMainParts implementation: | 29 // content::BrowserMainParts implementation: |
39 virtual void PreMainMessageLoopStart() OVERRIDE; | 30 virtual void PreMainMessageLoopStart() OVERRIDE; |
40 virtual void PostMainMessageLoopStart() OVERRIDE; | 31 virtual void PostMainMessageLoopStart() OVERRIDE; |
41 virtual int PreCreateThreads() OVERRIDE; | 32 virtual int PreCreateThreads() OVERRIDE; |
42 virtual void PreMainMessageLoopRun() OVERRIDE; | 33 virtual void PreMainMessageLoopRun() OVERRIDE; |
43 virtual bool MainMessageLoopRun(int* result_code) OVERRIDE; | 34 virtual bool MainMessageLoopRun(int* result_code) OVERRIDE; |
44 virtual void PostMainMessageLoopRun() OVERRIDE; | 35 virtual void PostMainMessageLoopRun() OVERRIDE; |
45 | 36 |
46 CastBrowserContext* browser_context() { | 37 private: |
47 return browser_context_.get(); | 38 scoped_ptr<CastBrowserProcess> cast_browser_process_; |
48 } | |
49 | 39 |
50 private: | |
51 scoped_ptr<CastBrowserContext> browser_context_; | |
52 scoped_ptr<CastService> cast_service_; | |
53 scoped_ptr<metrics::CastMetricsServiceClient> metrics_service_client_; | |
54 scoped_ptr<RemoteDebuggingServer> dev_tools_; | |
55 URLRequestContextFactory* const url_request_context_factory_; | 40 URLRequestContextFactory* const url_request_context_factory_; |
56 | 41 |
57 DISALLOW_COPY_AND_ASSIGN(CastBrowserMainParts); | 42 DISALLOW_COPY_AND_ASSIGN(CastBrowserMainParts); |
58 }; | 43 }; |
59 | 44 |
60 } // namespace shell | 45 } // namespace shell |
61 } // namespace chromecast | 46 } // namespace chromecast |
62 | 47 |
63 #endif // CHROMECAST_SHELL_BROWSER_CAST_BROWSER_MAIN_PARTS_H_ | 48 #endif // CHROMECAST_SHELL_BROWSER_CAST_BROWSER_MAIN_PARTS_H_ |
OLD | NEW |