mutable_phone_model.h 934 B

123456789101112131415161718192021222324252627282930
  1. // Copyright 2020 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. #ifndef ASH_COMPONENTS_PHONEHUB_MUTABLE_PHONE_MODEL_H_
  5. #define ASH_COMPONENTS_PHONEHUB_MUTABLE_PHONE_MODEL_H_
  6. #include "ash/components/phonehub/phone_model.h"
  7. namespace ash {
  8. namespace phonehub {
  9. // Phone model which provides public API functions allowing the model to be
  10. // updated.
  11. class MutablePhoneModel : public PhoneModel {
  12. public:
  13. MutablePhoneModel();
  14. ~MutablePhoneModel() override;
  15. void SetPhoneName(const absl::optional<std::u16string>& phone_name);
  16. void SetPhoneStatusModel(
  17. const absl::optional<PhoneStatusModel>& phone_status_model);
  18. void SetBrowserTabsModel(
  19. const absl::optional<BrowserTabsModel>& browser_tabs_model);
  20. };
  21. } // namespace phonehub
  22. } // namespace ash
  23. #endif // ASH_COMPONENTS_PHONEHUB_MUTABLE_PHONE_MODEL_H_