aboutsummaryrefslogtreecommitdiffstats
path: root/doc/man/libcoopgamma_get_gamma_info_send.3
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--doc/man/libcoopgamma_get_gamma_info_send.378
1 files changed, 78 insertions, 0 deletions
diff --git a/doc/man/libcoopgamma_get_gamma_info_send.3 b/doc/man/libcoopgamma_get_gamma_info_send.3
new file mode 100644
index 0000000..5eb5b5e
--- /dev/null
+++ b/doc/man/libcoopgamma_get_gamma_info_send.3
@@ -0,0 +1,78 @@
+.TH LIBCOOPGAMMA_GET_GAMMA_INFO_SEND 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_get_gamma_info_send - Send a request for metainfomation for a CRTC's gamma ramps
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_get_gamma_info_send(const char *restrict \Icrtc\fP, libcoopgamma_context_t *restrict \fIctx\fP,
+ libcoopgamma_async_context_t *restrict \fIasync\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_get_gamma_info_send ()
+function sends a request over the connection of
+.I ctx
+to the server for metainformation about a the
+CRTC, with the name given in the
+.I crtc
+parameter, gamma ramps. Information about the
+request is stored in
+.IR *async ,
+this information is used by
+.BR libcoopgamma_synchronise (3)
+to identify the response, and by
+.BR libcoopgamma_get_gamma_info_recv (3)
+to parse the response.
+.SH "RETURN VALUES"
+Upon successful completion, the
+.BR libcoopgamma_get_gamma_info_send ()
+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 malloc (3),
+.BR realloc (3),
+or
+.BR libcoopgamma_flush (3).
+Particularly interesting exceptional
+conditions, that are not errors proper, include
+those indicated by the following values on
+.IR errno :
+.TP
+.B EINTR
+The function was interrupted by a signal. When
+this happens, call
+.BR libcoopgamma_flush (3)
+to resume.
+.TP
+.BR EAGAIN " or " EWOULDBLOCK
+The communication is nonblocking and the buffer
+between the server and the client is full,
+and no more data can be queued without blocking.
+When this happens, wait a short period of time
+and call
+.BR libcoopgamma_flush (3)
+to resume.
+.BR select (3)
+or similar function can be used to wait until
+.I ctx->fd
+is readable.
+.TP
+.B ECONNREST
+The connection to the server has closed.
+.SH "SEE ALSO"
+.BR libcoopgamma_flush (3),
+.BR libcoopgamma_synchronise (3),
+.BR libcoopgamma_set_nonblocking (3),
+.BR libcoopgamma_get_gamma_info_recv (3),
+.BR libcoopgamma_get_gamma_info_sync (3),
+.BR libcoopgamma_get_crtcs_send (3),
+.BR libcoopgamma_get_gamma_send (3),
+.BR libcoopgamma_set_gamma_send (3)