Android-cuttlefish cvd tool
display.h
Go to the documentation of this file.
1//
2// Copyright (C) 2023 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15
16#pragma once
17
18#include <string>
19#include <vector>
20
21#include <fruit/fruit.h>
22
27
28namespace cuttlefish {
29
30// Component to share data between DisplayConfigsFlag and
31// DisplayConfigsFragment.
33 public:
34 virtual ~DisplaysConfigs() = default;
35
36 virtual std::string Name() const = 0;
37
38 virtual const std::vector<CuttlefishConfig::DisplayConfig>& GetConfigs()
39 const = 0;
40 virtual void SetConfigs(
41 const std::vector<CuttlefishConfig::DisplayConfig>& configs) = 0;
42};
43
44// Component to parse the --display command line flag and update the
45// DisplayConfigs.
47
48// Component to serialize and deserialize the DisplayConfigs to/from
49// Json.
51
52fruit::Component<DisplaysConfigs> DisplaysConfigsComponent();
53
54fruit::Component<fruit::Required<DisplaysConfigs, ConfigFlag>,
57
58fruit::Component<fruit::Required<DisplaysConfigs>, DisplaysConfigsFragment>
60
61} // namespace cuttlefish
Definition: config_fragment.h:24
Definition: display.h:46
Definition: display.h:50
Definition: display.h:32
virtual std::string Name() const =0
virtual const std::vector< CuttlefishConfig::DisplayConfig > & GetConfigs() const =0
virtual ~DisplaysConfigs()=default
virtual void SetConfigs(const std::vector< CuttlefishConfig::DisplayConfig > &configs)=0
Definition: feature.h:114
Definition: alloc_utils.cpp:23
fruit::Component< DisplaysConfigs > DisplaysConfigsComponent()
Definition: display.cpp:51
fruit::Component< fruit::Required< DisplaysConfigs, ConfigFlag >, DisplaysConfigsFlag > DisplaysConfigsFlagComponent()
Definition: display.cpp:90
fruit::Component< fruit::Required< DisplaysConfigs >, DisplaysConfigsFragment > DisplaysConfigsFragmentComponent()
Definition: display.cpp:156