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"
16 class BrowserPolicyConnector
;
19 // A base class for platform-specific BrowserProcessPlatformPart
20 // implementations. This class itself should never be used verbatim.
21 class BrowserProcessPlatformPartBase
{
23 BrowserProcessPlatformPartBase();
24 virtual ~BrowserProcessPlatformPartBase();
26 // Called after creating the process singleton or when another chrome
27 // rendez-vous with this one.
28 virtual void PlatformSpecificCommandLineProcessing(
29 const base::CommandLine
& command_line
);
31 // Called from BrowserProcessImpl::StartTearDown().
32 virtual void StartTearDown();
34 // Called from AttemptExitInternal().
35 virtual void AttemptExit();
37 // Called at the end of BrowserProcessImpl::PreMainMessageLoopRun().
38 virtual void PreMainMessageLoopRun();
40 #if defined(ENABLE_CONFIGURATION_POLICY)
41 virtual scoped_ptr
<policy::BrowserPolicyConnector
>
42 CreateBrowserPolicyConnector();
46 DISALLOW_COPY_AND_ASSIGN(BrowserProcessPlatformPartBase
);
49 #endif // CHROME_BROWSER_BROWSER_PROCESS_PLATFORM_PART_BASE_H_