NaCl: Update revision in DEPS, r12770 -> r12773
[chromium-blink-merge.git] / chrome / browser / browser_process_platform_part_base.h
blob28150e52b417ead657571a6c371c649f8b8b6764
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_BASE_H_
6 #define CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_BASE_H_
8 #include "base/basictypes.h"
9 #include "base/memory/scoped_ptr.h"
11 class CommandLine;
13 namespace policy {
14 class BrowserPolicyConnector;
17 // A base class for platform-specific BrowserProcessPlatformPart
18 // implementations. This class itself should never be used verbatim.
19 class BrowserProcessPlatformPartBase {
20 public:
21 BrowserProcessPlatformPartBase();
22 virtual ~BrowserProcessPlatformPartBase();
24 // Called after creating the process singleton or when another chrome
25 // rendez-vous with this one.
26 virtual void PlatformSpecificCommandLineProcessing(
27 const CommandLine& command_line);
29 // Called from BrowserProcessImpl::StartTearDown().
30 virtual void StartTearDown();
32 // Called from AttemptExitInternal().
33 virtual void AttemptExit();
35 // Called at the end of BrowserProcessImpl::PreMainMessageLoopRun().
36 virtual void PreMainMessageLoopRun();
38 #if defined(ENABLE_CONFIGURATION_POLICY)
39 virtual scoped_ptr<policy::BrowserPolicyConnector>
40 CreateBrowserPolicyConnector();
41 #endif
43 private:
44 DISALLOW_COPY_AND_ASSIGN(BrowserProcessPlatformPartBase);
47 #endif // CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_BASE_H_