Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / chromeos / login / screen_manager.cc
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
9 ScreenManager::ScreenManager() {
10 }
11
12 ScreenManager::~ScreenManager() {
13 }
14
15 BaseScreen* 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   BaseScreen* 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
26 bool ScreenManager::HasScreen(const std::string& screen_name) {
27   return screens_.count(screen_name) > 0;
28 }
29
30 }  // namespace chromeos