chrome_browser_main_extra_parts.h revision 5821806d5e7f356e8fa4b058a389a808ea183019
1// Copyright (c) 2011 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. 4 5#ifndef CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_ 6#define CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_ 7 8#include "base/basictypes.h" 9#include "base/compiler_specific.h" 10 11// Interface class for Parts owned by ChromeBrowserMainParts. 12// The default implementation for all methods is empty. 13 14// Most of these map to content::BrowserMainParts methods. This interface is 15// separate to allow stages to be further subdivided for Chrome specific 16// initialization stages (e.g. browser process init, profile init). 17 18class ChromeBrowserMainExtraParts { 19 public: 20 virtual ~ChromeBrowserMainExtraParts() {} 21 22 // EarlyInitialization methods. 23 virtual void PreEarlyInitialization() {} 24 virtual void PostEarlyInitialization() {} 25 26 // ToolkitInitialized methods. 27 virtual void ToolkitInitialized() {} 28 29 // MainMessageLoopStart methods. 30 virtual void PreMainMessageLoopStart() {} 31 virtual void PostMainMessageLoopStart() {} 32 33 // MainMessageLoopRun methods. 34 virtual void PreProfileInit() {} 35 virtual void PostProfileInit() {} 36 virtual void PreBrowserStart() {} 37 virtual void PostBrowserStart() {} 38 virtual void PreMainMessageLoopRun() {} 39 virtual void PostMainMessageLoopRun() {} 40}; 41 42#endif // CHROME_BROWSER_CHROME_BROWSER_MAIN_EXTRA_PARTS_H_ 43