privacy_screen_dlp_helper.h 1.0 KB

123456789101112131415161718192021222324252627282930313233
  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_PUBLIC_CPP_PRIVACY_SCREEN_DLP_HELPER_H_
  5. #define ASH_PUBLIC_CPP_PRIVACY_SCREEN_DLP_HELPER_H_
  6. #include "ash/public/cpp/ash_public_export.h"
  7. namespace ash {
  8. // Interface for DLP (Data Leak Prevention) ash client in Chrome to interact
  9. // with the PrivacyScreen feature.
  10. class ASH_PUBLIC_EXPORT PrivacyScreenDlpHelper {
  11. public:
  12. static PrivacyScreenDlpHelper* Get();
  13. // Check if privacy screen is supported by the device.
  14. virtual bool IsSupported() const = 0;
  15. // Set PrivacyScreen enforcement because of Data Leak Protection.
  16. virtual void SetEnforced(bool enforced) = 0;
  17. protected:
  18. PrivacyScreenDlpHelper();
  19. virtual ~PrivacyScreenDlpHelper();
  20. PrivacyScreenDlpHelper(const PrivacyScreenDlpHelper&) = delete;
  21. PrivacyScreenDlpHelper& operator=(const PrivacyScreenDlpHelper&) = delete;
  22. };
  23. } // namespace ash
  24. #endif // ASH_PUBLIC_CPP_PRIVACY_SCREEN_DLP_HELPER_H_