• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2012 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 #include "chrome/browser/chromeos/login/screen_manager.h"
6 
7 namespace chromeos {
8 
ScreenManager()9 ScreenManager::ScreenManager() {
10 }
11 
~ScreenManager()12 ScreenManager::~ScreenManager() {
13 }
14 
GetScreen(const std::string & screen_name)15 WizardScreen* ScreenManager::GetScreen(const std::string& screen_name) {
16   ScreenMap::const_iterator iter = screens_.find(screen_name);
17   if (iter != screens_.end()) {
18     return iter->second.get();
19   }
20   WizardScreen* result = CreateScreen(screen_name);
21   DCHECK(result) << "Can not create screen named " << screen_name;
22   screens_[screen_name] = make_linked_ptr(result);
23   return result;
24 }
25 
HasScreen(const std::string & screen_name)26 bool ScreenManager::HasScreen(const std::string& screen_name) {
27   return screens_.count(screen_name) > 0;
28 }
29 
30 }  // namespace chromeos
31