aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2016-07-20 15:55:07 +0200
committerMattias Andrée <maandree@kth.se>2016-07-20 15:55:07 +0200
commit9236774452fb9f7ac0bd01ce8919f53f4ef45a86 (patch)
treecb250dd9b668c747669c22671ceb3080d9c68f95
parentman style fix (diff)
downloadlibcoopgamma-9236774452fb9f7ac0bd01ce8919f53f4ef45a86.tar.gz
libcoopgamma-9236774452fb9f7ac0bd01ce8919f53f4ef45a86.tar.bz2
libcoopgamma-9236774452fb9f7ac0bd01ce8919f53f4ef45a86.tar.xz
m + Add libcoopgamma_*_unmarshal.3
Signed-off-by: Mattias Andrée <maandree@kth.se>
-rw-r--r--doc/man/libcoopgamma_async_context_marshal.32
-rw-r--r--doc/man/libcoopgamma_async_context_unmarshal.383
-rw-r--r--doc/man/libcoopgamma_context_marshal.32
-rw-r--r--doc/man/libcoopgamma_context_unmarshal.386
-rw-r--r--doc/man/libcoopgamma_crtc_info_marshal.32
-rw-r--r--doc/man/libcoopgamma_crtc_info_unmarshal.383
-rw-r--r--doc/man/libcoopgamma_error_marshal.32
-rw-r--r--doc/man/libcoopgamma_error_unmarshal.386
-rw-r--r--doc/man/libcoopgamma_filter_marshal.32
-rw-r--r--doc/man/libcoopgamma_filter_query_marshal.32
-rw-r--r--doc/man/libcoopgamma_filter_query_unmarshal.386
-rw-r--r--doc/man/libcoopgamma_filter_table_marshal.32
-rw-r--r--doc/man/libcoopgamma_filter_table_unmarshal.386
-rw-r--r--doc/man/libcoopgamma_filter_unmarshal.386
-rw-r--r--doc/man/libcoopgamma_queried_filter_marshal.32
-rw-r--r--doc/man/libcoopgamma_queried_filter_unmarshal.391
-rw-r--r--doc/man/libcoopgamma_ramps_marshal.32
-rw-r--r--doc/man/libcoopgamma_ramps_unmarshal.3100
18 files changed, 796 insertions, 9 deletions
diff --git a/doc/man/libcoopgamma_async_context_marshal.3 b/doc/man/libcoopgamma_async_context_marshal.3
index 319823d..e7197b8 100644
--- a/doc/man/libcoopgamma_async_context_marshal.3
+++ b/doc/man/libcoopgamma_async_context_marshal.3
@@ -26,7 +26,7 @@ and sizes of the intrinsic data types and
.SH "RETURN VALUES"
The
.BR libcoopgamma_async_context_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_async_context_unmarshal.3 b/doc/man/libcoopgamma_async_context_unmarshal.3
new file mode 100644
index 0000000..5930980
--- /dev/null
+++ b/doc/man/libcoopgamma_async_context_unmarshal.3
@@ -0,0 +1,83 @@
+.TH LIBCOOPGAMMA_ASYNC_CONTEXT_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_async_context_unmarshal - Unmarshal a libcoopgamma_async_context_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_async_context_unmarshal(libcoopgamma_async_context_t *restrict \fIthis\fP,
+ void *restrict \fIbuffer\fP, size_t *restrict \fIn\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_async_context_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_async_context_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_async_context_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_async_context_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+No error is specified for the
+.BR libcoopgamma_async_context_marshal ()
+function.
+.SH "SEE ALSO"
+.BR libcoopgamma_async_context_destroy (3),
+.BR libcoopgamma_async_context_marshal (3),
+.BR libcoopgamma_ramps_unmarshal (3),
+.BR libcoopgamma_filter_unmarshal (3),
+.BR libcoopgamma_crtc_info_unmarshal (3),
+.BR libcoopgamma_filter_query_unmarshal (3),
+.BR libcoopgamma_queried_filter_unmarshal (3),
+.BR libcoopgamma_filter_table_unmarshal (3),
+.BR libcoopgamma_error_unmarshal (3),
+.BR libcoopgamma_context_unmarshal (3)
diff --git a/doc/man/libcoopgamma_context_marshal.3 b/doc/man/libcoopgamma_context_marshal.3
index f5309e9..aa7feea 100644
--- a/doc/man/libcoopgamma_context_marshal.3
+++ b/doc/man/libcoopgamma_context_marshal.3
@@ -29,7 +29,7 @@ process itself since it contains a file descriptor.
.SH "RETURN VALUES"
The
.BR libcoopgamma_context_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_context_unmarshal.3 b/doc/man/libcoopgamma_context_unmarshal.3
new file mode 100644
index 0000000..f805163
--- /dev/null
+++ b/doc/man/libcoopgamma_context_unmarshal.3
@@ -0,0 +1,86 @@
+.TH LIBCOOPGAMMA_CONTEXT_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_context_unmarshal - Unmarshal a libcoopgamma_context_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_context_unmarshal(libcoopgamma_context_t *restrict \fIthis\fP,
+ void *restrict \fIbuffer\fP, size_t *restrict \fIn\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_context_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_context_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_context_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_context_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+The
+.BR libcoopgamma_context_marshal ()
+function may fail, and returned
+.I LIBCOOPGAMMA_ERRNO_SET
+for any reason specified for
+.BR malloc (3).
+.SH "SEE ALSO"
+.BR libcoopgamma_context_destroy (3),
+.BR libcoopgamma_context_marshal (3),
+.BR libcoopgamma_ramps_unmarshal (3),
+.BR libcoopgamma_filter_unmarshal (3),
+.BR libcoopgamma_crtc_info_unmarshal (3),
+.BR libcoopgamma_filter_query_unmarshal (3),
+.BR libcoopgamma_queried_filter_unmarshal (3),
+.BR libcoopgamma_filter_table_unmarshal (3),
+.BR libcoopgamma_error_unmarshal (3),
+.BR libcoopgamma_async_context_unmarshal (3)
diff --git a/doc/man/libcoopgamma_crtc_info_marshal.3 b/doc/man/libcoopgamma_crtc_info_marshal.3
index 91302c2..2a8b294 100644
--- a/doc/man/libcoopgamma_crtc_info_marshal.3
+++ b/doc/man/libcoopgamma_crtc_info_marshal.3
@@ -26,7 +26,7 @@ and sizes of the intrinsic data types and
.SH "RETURN VALUES"
The
.BR libcoopgamma_crtc_info_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_crtc_info_unmarshal.3 b/doc/man/libcoopgamma_crtc_info_unmarshal.3
new file mode 100644
index 0000000..964b3b0
--- /dev/null
+++ b/doc/man/libcoopgamma_crtc_info_unmarshal.3
@@ -0,0 +1,83 @@
+.TH LIBCOOPGAMMA_CRTC_INFO_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_crtc_info_unmarshal - Unmarshal a libcoopgamma_crtc_info_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_crtc_info_unmarshal(libcoopgamma_crtc_info_t *restrict \fIthis\fP,
+ void *restrict \fIbuffer\fP, size_t *restrict \fIn\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_crtc_info_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_crtc_info_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_crtc_info_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_crtc_info_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+No error is specified for the
+.BR libcoopgamma_crtc_info_marshal ()
+function.
+.SH "SEE ALSO"
+.BR libcoopgamma_crtc_info_destroy (3),
+.BR libcoopgamma_crtc_info_marshal (3),
+.BR libcoopgamma_ramps_unmarshal (3),
+.BR libcoopgamma_filter_unmarshal (3),
+.BR libcoopgamma_filter_query_unmarshal (3),
+.BR libcoopgamma_queried_filter_unmarshal (3),
+.BR libcoopgamma_filter_table_unmarshal (3),
+.BR libcoopgamma_error_unmarshal (3),
+.BR libcoopgamma_context_unmarshal (3),
+.BR libcoopgamma_async_context_unmarshal (3)
diff --git a/doc/man/libcoopgamma_error_marshal.3 b/doc/man/libcoopgamma_error_marshal.3
index aa92a85..f168a1c 100644
--- a/doc/man/libcoopgamma_error_marshal.3
+++ b/doc/man/libcoopgamma_error_marshal.3
@@ -26,7 +26,7 @@ and sizes of the intrinsic data types and
.SH "RETURN VALUES"
The
.BR libcoopgamma_error_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_error_unmarshal.3 b/doc/man/libcoopgamma_error_unmarshal.3
new file mode 100644
index 0000000..b780cb2
--- /dev/null
+++ b/doc/man/libcoopgamma_error_unmarshal.3
@@ -0,0 +1,86 @@
+.TH LIBCOOPGAMMA_ERROR_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_error_unmarshal - Unmarshal a libcoopgamma_error_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_error_unmarshal(libcoopgamma_error_t *restrict \fIthis\fP,
+ void *restrict \fIbuffer\fP, size_t *restrict \fIn\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_error_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_error_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_error_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_error_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+The
+.BR libcoopgamma_error_marshal ()
+function may fail, and returned
+.I LIBCOOPGAMMA_ERRNO_SET
+for any reason specified for
+.BR malloc (3).
+.SH "SEE ALSO"
+.BR libcoopgamma_error_destroy (3),
+.BR libcoopgamma_error_marshal (3),
+.BR libcoopgamma_ramps_unmarshal (3),
+.BR libcoopgamma_filter_unmarshal (3),
+.BR libcoopgamma_crtc_info_unmarshal (3),
+.BR libcoopgamma_filter_query_unmarshal (3),
+.BR libcoopgamma_queried_filter_unmarshal (3),
+.BR libcoopgamma_filter_table_unmarshal (3),
+.BR libcoopgamma_context_unmarshal (3),
+.BR libcoopgamma_async_context_unmarshal (3)
diff --git a/doc/man/libcoopgamma_filter_marshal.3 b/doc/man/libcoopgamma_filter_marshal.3
index 445add6..982802d 100644
--- a/doc/man/libcoopgamma_filter_marshal.3
+++ b/doc/man/libcoopgamma_filter_marshal.3
@@ -26,7 +26,7 @@ and sizes of the intrinsic data types and
.SH "RETURN VALUES"
The
.BR libcoopgamma_filter_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_filter_query_marshal.3 b/doc/man/libcoopgamma_filter_query_marshal.3
index 9c10584..83d560d 100644
--- a/doc/man/libcoopgamma_filter_query_marshal.3
+++ b/doc/man/libcoopgamma_filter_query_marshal.3
@@ -26,7 +26,7 @@ and sizes of the intrinsic data types and
.SH "RETURN VALUES"
The
.BR libcoopgamma_filter_query_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_filter_query_unmarshal.3 b/doc/man/libcoopgamma_filter_query_unmarshal.3
new file mode 100644
index 0000000..8adc09a
--- /dev/null
+++ b/doc/man/libcoopgamma_filter_query_unmarshal.3
@@ -0,0 +1,86 @@
+.TH LIBCOOPGAMMA_FILTER_QUERY_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_filter_query_unmarshal - Unmarshal a libcoopgamma_filter_query_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_filter_query_unmarshal(libcoopgamma_filter_query_t *restrict \fIthis\fP,
+ void *restrict \fIbuffer\fP, size_t *restrict \fIn\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_filter_query_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_filter_query_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_filter_query_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_filter_query_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+The
+.BR libcoopgamma_filter_query_marshal ()
+function may fail, and returned
+.I LIBCOOPGAMMA_ERRNO_SET
+for any reason specified for
+.BR malloc (3).
+.SH "SEE ALSO"
+.BR libcoopgamma_filter_query_destroy (3),
+.BR libcoopgamma_filter_query_marshal (3),
+.BR libcoopgamma_ramps_unmarshal (3),
+.BR libcoopgamma_filter_unmarshal (3),
+.BR libcoopgamma_crtc_info_unmarshal (3),
+.BR libcoopgamma_queried_filter_unmarshal (3),
+.BR libcoopgamma_filter_table_unmarshal (3),
+.BR libcoopgamma_error_unmarshal (3),
+.BR libcoopgamma_context_unmarshal (3),
+.BR libcoopgamma_async_context_unmarshal (3)
diff --git a/doc/man/libcoopgamma_filter_table_marshal.3 b/doc/man/libcoopgamma_filter_table_marshal.3
index 0024210..bc17c8a 100644
--- a/doc/man/libcoopgamma_filter_table_marshal.3
+++ b/doc/man/libcoopgamma_filter_table_marshal.3
@@ -26,7 +26,7 @@ and sizes of the intrinsic data types and
.SH "RETURN VALUES"
The
.BR libcoopgamma_filter_table_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_filter_table_unmarshal.3 b/doc/man/libcoopgamma_filter_table_unmarshal.3
new file mode 100644
index 0000000..3dd5cd2
--- /dev/null
+++ b/doc/man/libcoopgamma_filter_table_unmarshal.3
@@ -0,0 +1,86 @@
+.TH LIBCOOPGAMMA_FILTER_TABLE_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_filter_table_unmarshal - Unmarshal a libcoopgamma_filter_table_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_filter_table_unmarshal(libcoopgamma_filter_table_t *restrict \fIthis\fP,
+ void *restrict \fIbuffer\fP, size_t *restrict \fIn\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_filter_table_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_filter_table_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_filter_table_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_filter_table_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+The
+.BR libcoopgamma_filter_table_marshal ()
+function may fail, and returned
+.I LIBCOOPGAMMA_ERRNO_SET
+for any reason specified for
+.BR malloc (3).
+.SH "SEE ALSO"
+.BR libcoopgamma_filter_table_destroy (3),
+.BR libcoopgamma_filter_table_marshal (3),
+.BR libcoopgamma_ramps_unmarshal (3),
+.BR libcoopgamma_filter_unmarshal (3),
+.BR libcoopgamma_crtc_info_unmarshal (3),
+.BR libcoopgamma_filter_query_unmarshal (3),
+.BR libcoopgamma_queried_filter_unmarshal (3),
+.BR libcoopgamma_error_unmarshal (3),
+.BR libcoopgamma_context_unmarshal (3),
+.BR libcoopgamma_async_context_unmarshal (3)
diff --git a/doc/man/libcoopgamma_filter_unmarshal.3 b/doc/man/libcoopgamma_filter_unmarshal.3
new file mode 100644
index 0000000..d9f1ee8
--- /dev/null
+++ b/doc/man/libcoopgamma_filter_unmarshal.3
@@ -0,0 +1,86 @@
+.TH LIBCOOPGAMMA_FILTER_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_filter_unmarshal - Unmarshal a libcoopgamma_filter_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_filter_unmarshal(libcoopgamma_filter_t *restrict \fIthis\fP,
+ void *restrict \fIbuffer\fP, size_t *restrict \fIn\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_filter_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_filter_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_filter_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_filter_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+The
+.BR libcoopgamma_filter_marshal ()
+function may fail, and returned
+.I LIBCOOPGAMMA_ERRNO_SET
+for any reason specified for
+.BR malloc (3).
+.SH "SEE ALSO"
+.BR libcoopgamma_filter_destroy (3),
+.BR libcoopgamma_filter_marshal (3),
+.BR libcoopgamma_ramps_unmarshal (3),
+.BR libcoopgamma_crtc_info_unmarshal (3),
+.BR libcoopgamma_filter_query_unmarshal (3),
+.BR libcoopgamma_queried_filter_unmarshal (3),
+.BR libcoopgamma_filter_table_unmarshal (3),
+.BR libcoopgamma_error_unmarshal (3),
+.BR libcoopgamma_context_unmarshal (3),
+.BR libcoopgamma_async_context_unmarshal (3)
diff --git a/doc/man/libcoopgamma_queried_filter_marshal.3 b/doc/man/libcoopgamma_queried_filter_marshal.3
index 5296962..10b7ff7 100644
--- a/doc/man/libcoopgamma_queried_filter_marshal.3
+++ b/doc/man/libcoopgamma_queried_filter_marshal.3
@@ -32,7 +32,7 @@ is 0, the ramps are not marshalled.
.SH "RETURN VALUES"
The
.BR libcoopgamma_queried_filter_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_queried_filter_unmarshal.3 b/doc/man/libcoopgamma_queried_filter_unmarshal.3
new file mode 100644
index 0000000..01f1867
--- /dev/null
+++ b/doc/man/libcoopgamma_queried_filter_unmarshal.3
@@ -0,0 +1,91 @@
+.TH LIBCOOPGAMMA_QUERIED_FILTER_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_queried_filter_unmarshal - Unmarshal a libcoopgamma_queried_filter_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_queried_filter_unmarshal(libcoopgamma_queried_filter_t *restrict \fIthis\fP,
+ void *restrict \fIbuffer\fP, size_t *restrict \fIn\fP,
+ libcoopgamma_depth_t \fIdepth\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_queried_filter_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.I depth
+must be the same value the parameter with the same
+name had in the corresponding call to
+.BR libcoopgamma_queried_filter_marshal (3).
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_queried_filter_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_queried_filter_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_queried_filter_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+The
+.BR libcoopgamma_queried_filter_marshal ()
+function may fail, and returned
+.I LIBCOOPGAMMA_ERRNO_SET
+for any reason specified for
+.BR malloc (3).
+.SH "SEE ALSO"
+.BR libcoopgamma_queried_filter_destroy (3),
+.BR libcoopgamma_queried_filter_marshal (3),
+.BR libcoopgamma_ramps_unmarshal (3),
+.BR libcoopgamma_filter_unmarshal (3),
+.BR libcoopgamma_crtc_info_unmarshal (3),
+.BR libcoopgamma_filter_query_unmarshal (3),
+.BR libcoopgamma_filter_table_unmarshal (3),
+.BR libcoopgamma_error_unmarshal (3),
+.BR libcoopgamma_context_unmarshal (3),
+.BR libcoopgamma_async_context_unmarshal (3)
diff --git a/doc/man/libcoopgamma_ramps_marshal.3 b/doc/man/libcoopgamma_ramps_marshal.3
index 7aa1027..aed8509 100644
--- a/doc/man/libcoopgamma_ramps_marshal.3
+++ b/doc/man/libcoopgamma_ramps_marshal.3
@@ -43,7 +43,7 @@ function is defined as a macro.
.SH "RETURN VALUES"
The
.BR libcoopgamma_ramps_marshal ()
-returns the number of bytes stored in the
+function returns the number of bytes stored in the
.IR buffer ,
or if
.I buffer
diff --git a/doc/man/libcoopgamma_ramps_unmarshal.3 b/doc/man/libcoopgamma_ramps_unmarshal.3
new file mode 100644
index 0000000..34393cf
--- /dev/null
+++ b/doc/man/libcoopgamma_ramps_unmarshal.3
@@ -0,0 +1,100 @@
+.TH LIBCOOPGAMMA_RAMPS_UNMARSHAL 3 LIBCOOPGAMMA
+.SH "NAME"
+libcoopgamma_ramps_unmarshal - Unmarshal a member type of libcoopgamma_ramps_t
+.SH "SYNOPSIS"
+.nf
+#include <libcoopgamma.h>
+
+int libcoopgamma_ramps_unmarshal(void *restrict \fIthis\fP, void *restrict \fIbuffer\fP,
+ size_t *restrict \fIn\fP);
+.fi
+.P
+Link with
+.IR -lcoopgamma .
+.SH "DESCRIPTION"
+The
+.BR libcoopgamma_ramps_unmarshal ()
+function unmarshals
+.I this
+from a
+.I buffer .
+The number of read bytes from
+.I buffer
+is stored in
+.I *n
+on success.
+.P
+.I this
+must be of any of the following types, and not casted
+to any other type such as
+.I void*
+or
+.IR libcoopgamma_ramps_t:
+.IR libcoopgamma_ramps8_t ,
+.IR libcoopgamma_ramps16_t ,
+.IR libcoopgamma_ramps32_t ,
+.IR libcoopgamma_ramps64_t ,
+.IR libcoopgamma_rampsf_t ,
+or
+.IR libcoopgamma_rampsd_t .
+.P
+None if the parameters may be
+.IR NULL .
+.I this
+does not have to be initialised.
+.P
+On failure,
+.I this
+should be deinitialised using
+.BR libcoopgamma_ramps_destroy (3).
+.P
+Undefined behaviour is invoked if the
+beginning of
+.I buffer
+does not contain data stored by
+.BR libcoopgamma_ramps_marshal (3).
+.SH "RETURN VALUES"
+The
+.BR libcoopgamma_ramps_unmarshal ()
+function returns one of the following
+values:
+.TP
+.IR LIBCOOPGAMMA_SUCCESS " (= 0)"
+The function was successful.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_DOWNGRADE " (> 0)"
+The data in
+.I buffer
+was stored by an earlier version of
+.BR libcoopgamma (7)
+that is no longer supported.
+.TP
+.IR LIBCOOPGAMMA_INCOMPATIBLE_UPGRADE " (> 0)"
+The data in
+.I buffer
+was stored by a newer version of
+.BR libcoopgamma (7)
+that stores the data in an incompatible format.
+.TP
+.IR LIBCOOPGAMMA_ERRNO_SET "(= -1)"
+An other error was encountered.
+.I errno
+has been set appropriately.
+.SH "ERROR"
+The
+.BR libcoopgamma_ramps_marshal ()
+function may fail, and returned
+.I LIBCOOPGAMMA_ERRNO_SET
+for any reason specified for
+.BR malloc (3).
+.SH "SEE ALSO"
+.BR libcoopgamma_ramps_destroy (3),
+.BR libcoopgamma_ramps_marshal (3),
+.BR libcoopgamma_filter_unmarshal (3),
+.BR libcoopgamma_crtc_info_unmarshal (3),
+.BR libcoopgamma_filter_query_unmarshal (3),
+.BR libcoopgamma_queried_filter_unmarshal (3),
+.BR libcoopgamma_filter_table_unmarshal (3),
+.BR libcoopgamma_error_unmarshal (3),
+.BR libcoopgamma_context_unmarshal (3),
+.BR libcoopgamma_async_context_unmarshal (3)