| /*! |
| |
| @page monitor Multi-monitor guide |
| |
| @tableofcontents |
| |
| |
| @section monitor_objects Monitor objects |
| |
| The @ref GLFWmonitor object represents a currently connected monitor. |
| |
| |
| @section monitor_monitors Retrieving monitors |
| |
| The primary monitor is returned by @ref glfwGetPrimaryMonitor. It is usually |
| the user's preferred monitor and the one with global UI elements like task bar |
| or menu bar. |
| |
| @code |
| GLFWmonitor* primary = glfwGetPrimaryMonitor(); |
| @endcode |
| |
| You can retrieve all currently connected monitors with @ref glfwGetMonitors. |
| |
| @code |
| int count; |
| GLFWmonitor** monitors = glfwGetMonitors(&count); |
| @endcode |
| |
| |
| @section monitor_modes Retrieving video modes |
| |
| Although GLFW generally does a good job at selecting a suitable video |
| mode for you when you open a full screen window, it is sometimes useful to |
| know exactly which modes are available on a certain system. For example, |
| you may want to present the user with a list of video modes to select |
| from. To get a list of available video modes, you can use the function |
| @ref glfwGetVideoModes. |
| |
| @code |
| int count; |
| GLFWvidmode* modes = glfwGetVideoModes(monitor, &count); |
| @endcode |
| |
| To get the current video mode of a monitor call @ref glfwGetVideoMode. |
| |
| @code |
| const GLFWvidmode* mode = glfwGetVideoMode(monitor); |
| @endcode |
| |
| |
| @section monitor_size Monitor physical size |
| |
| The physical size in millimetres of a monitor, or an approximation of it, can be |
| retrieved with @ref glfwGetMonitorPhysicalSize. |
| |
| @code |
| int widthMM, heightMM; |
| glfwGetMonitorPhysicalSize(monitor, &widthMM, &heightMM); |
| @endcode |
| |
| This can, for example, be used together with the current video mode to calculate |
| the DPI of a monitor. |
| |
| @code |
| const double dpi = mode->width / (widthMM / 25.4); |
| @endcode |
| |
| |
| @section monitor_name Monitor name |
| |
| The name of a monitor is returned by @ref glfwGetMonitorName. |
| |
| @code |
| const char* name = glfwGetMonitorName(monitor); |
| @endcode |
| |
| The monitor name is a regular C string using the UTF-8 encoding. Note that |
| monitor names are not guaranteed to be unique. |
| |
| |
| @section monitor_gamma Monitor gamma ramp |
| |
| The gamma ramp of a monitor can be set with @ref glfwSetGammaRamp, which accepts |
| a monitor handle and a pointer to a @ref GLFWgammaramp structure. |
| |
| @code |
| glfwSetGammaRamp(monitor, &ramp); |
| @endcode |
| |
| The current gamma ramp for a monitor is returned by @ref glfwGetGammaRamp. |
| |
| @code |
| const GLFWgammaramp* ramp = glfwGetGammaRamp(monitor); |
| @endcode |
| |
| If you wish to set a regular gamma ramp, you can have GLFW calculate it for you |
| from the desired exponent with @ref glfwSetGamma, which in turn calls @ref |
| glfwSetGammaRamp with the resulting ramp. |
| |
| @code |
| glfwSetGamma(monitor, 1.0); |
| @endcode |
| |
| */ |