night_light_controller.cc 924 B

123456789101112131415161718192021222324252627282930313233343536
  1. // Copyright 2019 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. #include "ash/public/cpp/night_light_controller.h"
  5. #include "base/check_op.h"
  6. namespace ash {
  7. namespace {
  8. NightLightController* g_night_light_controller = nullptr;
  9. }
  10. // static
  11. NightLightController* NightLightController::GetInstance() {
  12. return g_night_light_controller;
  13. }
  14. NightLightController::NightLightController() {
  15. DCHECK(!g_night_light_controller);
  16. g_night_light_controller = this;
  17. }
  18. NightLightController::~NightLightController() {
  19. DCHECK_EQ(g_night_light_controller, this);
  20. g_night_light_controller = nullptr;
  21. }
  22. void NightLightController::AddObserver(Observer* observer) {
  23. observers_.AddObserver(observer);
  24. }
  25. void NightLightController::RemoveObserver(Observer* observer) {
  26. observers_.RemoveObserver(observer);
  27. }
  28. } // namespace ash