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 
5 #ifndef COMPONENTS_VIZ_COMMON_DISPLAY_OVERLAY_STRATEGY_H_
6 #define COMPONENTS_VIZ_COMMON_DISPLAY_OVERLAY_STRATEGY_H_
7 
8 #include <string>
9 #include <vector>
10 
11 #include "components/viz/common/viz_common_export.h"
12 
13 namespace viz {
14 
15 // Enum used for UMA histogram. These enum values must not be changed or
16 // reused.
17 enum class OverlayStrategy {
18   kUnknown = 0,
19   kNoStrategyUsed = 1,
20   kFullscreen = 2,
21   kSingleOnTop = 3,
22   kUnderlay = 4,
23   kUnderlayCast = 5,
24   kMaxValue = kUnderlayCast,
25 };
26 
27 // Parses a comma separated list of overlay strategy types and returns a list
28 // of the corresponding OverlayStrategy enum values.
29 VIZ_COMMON_EXPORT std::vector<OverlayStrategy> ParseOverlayStrategies(
30     const std::string& strategies_string);
31 
32 }  // namespace viz
33 
34 #endif  // COMPONENTS_VIZ_COMMON_DISPLAY_OVERLAY_STRATEGY_H_
35