Mir
mir_display_configuration.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2016 Canonical Ltd.
3  *
4  * This program is free software: you can redistribute it and/or modify it
5  * under the terms of the GNU Lesser General Public License version 3,
6  * as published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU Lesser General Public License for more details.
12  *
13  * You should have received a copy of the GNU Lesser General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * Authored by: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
17  */
18 
19 #ifndef MIR_TOOLKIT_MIR_DISPLAY_CONFIGURATION_H_
20 #define MIR_TOOLKIT_MIR_DISPLAY_CONFIGURATION_H_
21 
22 #include "client_types.h"
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
42 
49 
63  MirDisplayConfig const* config)
64  MIR_FOR_REMOVAL_IN_VERSION_1("Not accurate in Mir 0.26 and later. May be removed in future.");
65 
83 
95  size_t index);
96 
108  size_t index);
109 
119 int mir_output_get_num_modes(MirOutput const* output);
120 
135 MirOutputMode const* mir_output_get_mode(MirOutput const* output, size_t index);
136 
154 
168 size_t mir_output_get_preferred_mode_index(MirOutput const* output);
169 
184 
195 size_t mir_output_get_current_mode_index(MirOutput const* output);
196 
203 void mir_output_set_current_mode(MirOutput* output, MirOutputMode const* mode);
204 
212 
223  size_t index);
224 
233 
241 
252 int mir_output_get_id(MirOutput const* output);
253 
264 
272 MIR_FOR_REMOVAL_IN_VERSION_1("use mir_output_type_name instead");
273 
280 char const* mir_output_type_name(MirOutputType type);
281 
296 int mir_output_get_position_x(MirOutput const* output);
297 
312 int mir_output_get_position_y(MirOutput const* output);
313 
330 void mir_output_set_position(MirOutput* output, int x, int y);
331 
354  MirOutput const* output);
355 
362 bool mir_output_is_enabled(MirOutput const* output);
363 
369 void mir_output_enable(MirOutput* output);
370 
376 void mir_output_disable(MirOutput* output);
377 
388 char const* mir_output_get_model(MirOutput const* output);
389 
404 
419 
430 
440 
448 
455 void mir_output_set_orientation(MirOutput* output, MirOrientation orientation);
456 
471 float mir_output_get_scale_factor(MirOutput const* output);
472 
481 
491 
497 bool mir_output_is_gamma_supported(MirOutput const* client_output);
498 
505 uint32_t mir_output_get_gamma_size(MirOutput const* client_output);
506 
517 void mir_output_get_gamma(MirOutput const* client_output,
518  uint16_t* red,
519  uint16_t* green,
520  uint16_t* blue,
521  uint32_t size);
522 
531 void mir_output_set_gamma(MirOutput* client_output,
532  uint16_t const* red,
533  uint16_t const* green,
534  uint16_t const* blue,
535  uint32_t size);
536 
546 void mir_output_set_scale_factor(MirOutput* output, float scale);
547 
562 uint8_t const* mir_output_get_edid(MirOutput const* output);
563 
574 size_t mir_output_get_edid_size(MirOutput const* output);
575 
585 
594 
601 
604 #ifdef __cplusplus
605 }
606 #endif
607 
608 #endif //MIR_TOOLKIT_MIR_DISPLAY_CONFIGURATION_H_
struct MirOutput MirOutput
Descriptor for an output connection.
Definition: client_types.h:65
int mir_output_get_position_y(MirOutput const *output)
Get the y coordinate of the top-left point of the output in the virtual display space.
int mir_output_get_num_modes(MirOutput const *output)
Get the number of modes in the supported mode list of this output.
void mir_output_get_gamma(MirOutput const *client_output, uint16_t *red, uint16_t *green, uint16_t *blue, uint32_t size)
Get the gamma ramp of a display.
struct MirDisplayConfig MirDisplayConfig
Definition: client_types.h:53
void mir_output_set_current_mode(MirOutput *output, MirOutputMode const *mode)
Set the current mode of an output.
size_t mir_output_get_preferred_mode_index(MirOutput const *output)
Get the index of the output&#39;s preferred mode.
MirOutputMode const * mir_output_get_mode(MirOutput const *output, size_t index)
Get a handle for a mode descriptor from the list of supported modes.
void mir_output_set_power_mode(MirOutput *output, MirPowerMode mode)
Set the power state of a connected display.
int mir_output_mode_get_width(MirOutputMode const *mode)
Get the width, in pixels, of a MirOutputMode.
int mir_display_config_get_num_outputs(MirDisplayConfig const *config)
Get the number of outputs available in this display configuration.
MirOutputConnectionState
Definition: client_types.h:325
#define MIR_FOR_REMOVAL_IN_VERSION_1(message)
Definition: deprecations.h:30
int mir_output_get_physical_width_mm(MirOutput const *output)
Get the physical width of the connected display, in millimetres.
char const * mir_display_output_type_name(MirDisplayOutputType type) MIR_FOR_REMOVAL_IN_VERSION_1("use mir_output_type_name instead")
Get the textual name of an output type.
MirOutputMode const * mir_output_get_preferred_mode(MirOutput const *output)
Get a handle to the output&#39;s preferred mode.
MirOrientation mir_output_get_orientation(MirOutput const *output)
Get the orientation of a display.
MirFormFactor mir_output_get_form_factor(MirOutput const *output)
Get the form-factor of a connected output.
MirOutputConnectionState mir_output_get_connection_state(MirOutput const *output)
Get whether there is a display physically connected to the output.
MirPixelFormat mir_output_get_pixel_format(MirOutput const *output, size_t index)
Get a pixel format from the list of supported formats.
uint32_t mir_output_get_gamma_size(MirOutput const *client_output)
Gets the gamma size.
MirOrientation
Direction relative to the "natural" orientation of the display.
Definition: common.h:271
MirSubpixelArrangement
Physical arrangement of subpixels on the physical output.
Definition: common.h:421
MirOutputMode const * mir_output_get_current_mode(MirOutput const *output)
Get a handle to the output&#39;s current mode.
void mir_output_set_position(MirOutput *output, int x, int y)
Set the coordinates of the top-left point of the output in the virtual display space.
bool mir_output_is_gamma_supported(MirOutput const *client_output)
Gets if the platform supports gamma correction.
MirPowerMode mir_output_get_power_mode(MirOutput const *output)
Get the power state of a connected display.
bool mir_output_is_enabled(MirOutput const *output)
Get whether this output is enabled in the current configuration.
void mir_display_config_release(MirDisplayConfig *config)
Release resources associated with a MirDisplayConfig handle.
void mir_output_set_scale_factor(MirOutput *output, float scale)
Set the scale-factor of a display.
MirPowerMode
Definition: common.h:186
MirOutputType mir_output_get_type(MirOutput const *output)
Get the physical connection type of an output.
int mir_output_get_position_x(MirOutput const *output)
Get the x coordinate of the top-left point of the output in the virtual display space.
MirFormFactor
Form factor associated with a physical output.
Definition: common.h:405
MirPixelFormat
32-bit pixel formats (8888): The order of components in the enum matches the order of the components ...
Definition: common.h:241
char const * mir_output_type_name(MirOutputType type)
Get the textual name of an output type.
void mir_output_set_gamma(MirOutput *client_output, uint16_t const *red, uint16_t const *green, uint16_t const *blue, uint32_t size)
Set the gamma ramp of a display.
struct MirOutputMode MirOutputMode
A descriptor for a display mode.
Definition: mir_display_configuration.h:41
double mir_output_mode_get_refresh_rate(MirOutputMode const *mode)
Get the refresh rate, in Hz, of a MirOutputMode.
MirOutput * mir_display_config_get_mutable_output(MirDisplayConfig *config, size_t index)
Get a modifyable handle to the index &#39;th output of this configuration.
MirPixelFormat mir_output_get_current_pixel_format(MirOutput const *output)
Get the current pixel format.
void mir_output_set_pixel_format(MirOutput *output, MirPixelFormat format)
Set the output format.
MirDisplayOutputType
Definition: client_types.h:303
int mir_output_get_num_pixel_formats(MirOutput const *output)
Get the number of pixel formats supported by this output.
char const * mir_output_get_model(MirOutput const *output)
Get a descriptive manufacturer/model string for the connected display.
int mir_display_config_get_max_simultaneous_outputs(MirDisplayConfig const *config) MIR_FOR_REMOVAL_IN_VERSION_1("Not accurate in Mir 0.26 and later. May be removed in future.")
Get the maximum possible number of simultaneously active outputs this system supports.
int mir_output_get_physical_height_mm(MirOutput const *output)
Get the physical height of the connected display, in millimetres.
void mir_output_set_orientation(MirOutput *output, MirOrientation orientation)
Set the orientation of a display.
MirOutputType
Definition: common.h:194
uint8_t const * mir_output_get_edid(MirOutput const *output)
Get the raw EDID data of a display.
void mir_output_enable(MirOutput *output)
Enable this output.
int mir_output_get_id(MirOutput const *output)
Get the ID of an output.
size_t mir_output_get_edid_size(MirOutput const *output)
Get the size of the EDID of this display.
MirOutput const * mir_display_config_get_output(MirDisplayConfig const *config, size_t index)
Get a read-only handle to the index &#39;th output of this configuration.
void mir_output_disable(MirOutput *output)
Disable this output.
float mir_output_get_scale_factor(MirOutput const *output)
Get the scale-factor of a display.
size_t mir_output_get_current_mode_index(MirOutput const *output)
Get the index of to the output&#39;s current mode.
int mir_output_mode_get_height(MirOutputMode const *mode)
Get the height, in pixels, of a MirOutputMode.
MirSubpixelArrangement mir_output_get_subpixel_arrangement(MirOutput const *output)
Get the subpixel arrangement of a display.

Copyright © 2012-2016 Canonical Ltd.
Generated on Mon Jun 5 13:49:26 UTC 2017