aboutsummaryrefslogtreecommitdiffstats
path: root/libcoopgamma_get_gamma_info_sync.3
diff options
context:
space:
mode:
Diffstat (limited to 'libcoopgamma_get_gamma_info_sync.3')
-rw-r--r--libcoopgamma_get_gamma_info_sync.3142
1 files changed, 142 insertions, 0 deletions
diff --git a/libcoopgamma_get_gamma_info_sync.3 b/libcoopgamma_get_gamma_info_sync.3
new file mode 100644
index 0000000..3187231
--- /dev/null
+++ b/libcoopgamma_get_gamma_info_sync.3
@@ -0,0 +1,142 @@
+.TH LIBCOOPGAMMA_GET_GAMMA_INFO_SYNC 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_get_gamma_info_sync - Synchronously retrieve metainformation about a CRTC's gamma ramps
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_get_gamma_info_sync(const char* restrict \fIcrtc\fP,
+ libcoopgamma_crtc_info_t* restrict \fIinfo\fP,
+ libcoopgamma_context_t *restrict \fIctx\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_get_gamma_info_sync ()
+function synchronously retrieves metainformation
+about the CRTC's, whose name is
+.IR crtc ,
+gamma ramps over the connection of
+.I ctx
+to the server.
+.P
+The information about the CRTC's gamma ramps
+will be stored in
+.IR *info .
+In particular,
+.I info->cooperative
+will be set to nonzero (actually 1) if there is
+a coopgamma server running,
+.I info->supported
+will be set to
+.IR LIBCOOPGAMMA_NO ,
+.IR LIBCOOPGAMMA_MAYBE ,
+or
+.IR LIBCOOPGAMMA_YES ,
+which ever describes the state of gamma ramp
+support on the CRTC. Unless
+.I info->supported
+is
+.IR LIBCOOPGAMMA_NO ,
+the following will also be set:
+.TP
+.I info->red_size
+The number of stops on the red gamma ramp.
+.TP
+.I info->green_size
+The number of stops on the green gamma ramp.
+.TP
+.I info->blue_size
+The number of stops on the blue gamma ramp.
+.TP
+.I info->depth
+Describes the gamma ramp types used for the CRTC.
+.P
+The
+.BR libcoopgamma_get_gamma_info_sync ()
+will also store monitor's colourspace information in
+.IR *info .
+In particular,
+.I info->colourspace
+will be set to
+.IR LIBCOOPGAMMA_SRGB ,
+.IR LIBCOOPGAMMA_RGB ,
+.IR LIBCOOPGAMMA_NON_RGB ,
+.IR LIBCOOPGAMMA_GREY ,
+or
+.IR LIBCOOPGAMMA_UNKNOWN ,
+and
+.I info->have_gamut
+will be set to 1 or 0.
+.I info->have_gamut
+should be set to 0 unless
+.I info->colourspace
+is set to
+.I LIBCOOPGAMMA_SRGB
+or
+.IR LIBCOOPGAMMA_RGB ,
+and it should be set to 1 if
+.I info->colourspace
+is set to
+.I LIBCOOPGAMMA_SRGB ,
+however there are no guarantees that
+this is true. If
+.I info->have_gamut
+is non-zero, the following will also be set:
+.TP
+.I info->red_x
+The x-value (CIE xyY) of the monitor's
+red colour, multiplied by 1024.
+.TP
+.I info->red_y
+The y-value (CIE xyY) of the monitor's
+red colour, multiplied by 1024.
+.TP
+.I info->green_x
+The x-value (CIE xyY) of the monitor's
+green colour, multiplied by 1024.
+.TP
+.I info->green_y
+The y-value (CIE xyY) of the monitor's
+green colour, multiplied by 1024.
+.TP
+.I info->blue_x
+The x-value (CIE xyY) of the monitor's
+blue colour, multiplied by 1024.
+.TP
+.I info->blue_y
+The y-value (CIE xyY) of the monitor's
+blue colour, multiplied by 1024.
+.TP
+.I info->white_x
+The x-value (CIE xyY) of the monitor's
+default white point, multiplied by 1024.
+.TP
+.I info->white_y
+The y-value (CIE xyY) of the monitor's
+default white point, multiplied by 1024.
+.SH "RETURN VALUES"
+Upon successful completion, the
+.BR libcoopgamma_get_gamma_info_recv ()
+function returns 0. On error, -1 is returned and
+.I errno
+is set appropriately.
+.SH "ERRORS"
+The
+.BR libcoopgamma_get_gamma_info_send ()
+function may fail for any reason specified for
+.BR libcoopgamma_get_gamma_info_send (3),
+.BR libcoopgamma_get_gamma_info_recv (3),
+.BR libcoopgamma_flush (3),
+or
+.BR libcoopgamma_synchronise (3).
+.SH "SEE ALSO"
+.BR libcoopgamma.h (0),
+.BR libcoopgamma_crtc_info_initialise (3),
+.BR libcoopgamma_get_gamma_info_send (3),
+.BR libcoopgamma_get_gamma_info_recv (3),
+.BR libcoopgamma_get_crtcs_sync (3),
+.BR libcoopgamma_get_gamma_sync (3),
+.BR libcoopgamma_set_gamma_sync (3)