19 #ifndef MIRAL_WINDOW_SPECIFICATION_H
20 #define MIRAL_WINDOW_SPECIFICATION_H
33 namespace scene {
class Surface;
struct SurfaceCreationParameters; }
34 namespace shell {
struct SurfaceSpecification; }
40 namespace detail {
struct SessionsBufferStreamIdTag; }
69 void update(mir::scene::SurfaceCreationParameters& params)
const;
73 auto top_left() const ->
mir::optional_value<
Point> const&;
74 auto size() const ->
mir::optional_value<
Size> const&;
75 auto
name() const ->
mir::optional_value<std::
string> const&;
76 auto
output_id() const ->
mir::optional_value<
int> const&;
80 auto aux_rect() const ->
mir::optional_value<
Rectangle> const&;
84 auto aux_rect_placement_offset() const ->
mir::optional_value<
Displacement> const&;
85 auto min_width() const ->
mir::optional_value<
Width> const&;
86 auto min_height() const ->
mir::optional_value<
Height> const&;
87 auto max_width() const ->
mir::optional_value<
Width> const&;
88 auto max_height() const ->
mir::optional_value<
Height> const&;
89 auto width_inc() const ->
mir::optional_value<
DeltaX> const&;
90 auto height_inc() const ->
mir::optional_value<
DeltaY> const&;
91 auto min_aspect() const ->
mir::optional_value<
AspectRatio> const&;
92 auto max_aspect() const ->
mir::optional_value<
AspectRatio> const&;
94 auto parent() const ->
mir::optional_value<std::weak_ptr<
mir::scene::Surface>> const&;
95 auto input_shape() const ->
mir::optional_value<std::vector<
Rectangle>> const&;
99 auto userdata() const ->
mir::optional_value<std::shared_ptr<
void>> const&;
101 auto top_left() ->
mir::optional_value<
Point>&;
102 auto size() ->
mir::optional_value<
Size>&;
103 auto
name() ->
mir::optional_value<std::
string>&;
114 auto aux_rect_placement_offset() ->
mir::optional_value<
Displacement>&;
115 auto min_width() ->
mir::optional_value<
Width>&;
116 auto min_height() ->
mir::optional_value<
Height>&;
117 auto max_width() ->
mir::optional_value<
Width>&;
118 auto max_height() ->
mir::optional_value<
Height>&;
119 auto width_inc() ->
mir::optional_value<
DeltaX>&;
120 auto height_inc() ->
mir::optional_value<
DeltaY>&;
123 auto parent() ->
mir::optional_value<std::weak_ptr<
mir::scene::Surface>>&;
124 auto input_shape() ->
mir::optional_value<std::vector<
Rectangle>>&;
128 auto userdata() ->
mir::optional_value<std::shared_ptr<
void>>&;
150 auto exclusive_rect() const ->
mir::optional_value<
mir::optional_value<
mir::geometry::
Rectangle>> const&;
151 auto exclusive_rect() ->
mir::optional_value<
mir::optional_value<
mir::geometry::
Rectangle>>&;
157 auto application_id() const ->
mir::optional_value<std::
string> const&;
158 auto application_id() ->
mir::optional_value<std::
string>&;
163 std::unique_ptr<Self> self;
167 #endif //MIRAL_WINDOW_SPECIFICATION_H