diff options
author | Mattias Andrée <maandree@kth.se> | 2017-06-10 11:39:12 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@kth.se> | 2017-06-10 11:39:12 +0200 |
commit | f3f4081c6cb40663c68266493b13580e657faa45 (patch) | |
tree | 9783289e5858f9ac145e51e2a392d1c08aa4a340 /libcolour_unmarshal.3 | |
parent | Improve libcolour_proper: set model if possible (diff) | |
download | libcolour-f3f4081c6cb40663c68266493b13580e657faa45.tar.gz libcolour-f3f4081c6cb40663c68266493b13580e657faa45.tar.bz2 libcolour-f3f4081c6cb40663c68266493b13580e657faa45.tar.xz |
Add libcolour_marshal.3 and libcolour_unmarshal.3
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'libcolour_unmarshal.3')
-rw-r--r-- | libcolour_unmarshal.3 | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/libcolour_unmarshal.3 b/libcolour_unmarshal.3 new file mode 100644 index 0000000..4a859d1 --- /dev/null +++ b/libcolour_unmarshal.3 @@ -0,0 +1,62 @@ +.TH LIBCOLOUR_UNMARSHAL 3 libcolour +.SH NAME +libcolour_unmarshal - Unmarshal a colour record +.SH SYNOPSIS +.nf +#include <libcolour.h> + +size_t \fBlibcolour_unmarshal_f\fP(libcolour_colour_f_t *\fIcolour\fP, const void *\fIbuffer\fP); +size_t \fBlibcolour_unmarshal_lf\fP(libcolour_colour_lf_t *\fIcolour\fP, const void *\fIbuffer\fP); +size_t \fBlibcolour_unmarshal_llf\fP(libcolour_colour_ll_ft *\fIcolour\fP, const void *\fIbuffer\fP); + +#define \fBlibcolour_unmarshal\fP(\fIcolour\fP, \fIbuffer\fP)\\ + (_Generic((\fIvalue\fP),\\ + libcolour_colour_f_t *: \fBlibcolour_unmarshal_f\fP(\fIcolour\fP, \fIbuffer\fP),\\ + libcolour_colour_lf_t *: \fBlibcolour_unmarshal_lf\fP(\fIcolour\fP, \fIbuffer\fP),\\ + libcolour_colour_llf_t *: \fBlibcolour_unmarshal_llf\fP(\fIcolour\fP, \fIbuffer\fP))) + /* list is incomplete */ +.fi +.SH DESCRIPTION +.B libcolour_unmarshal +and its non-generic functions restores a +.I colour +from a +.IR buffer +and returns the number of bytes read. +If +.I colour +is +.BR NULL , +no +.I colour +is restored, the same value is returned. +.P +If the stored colour uses a custom (not pre-defined) +RGB colour space with custom a transfer function, +the user must set them after calling any of +these functions. +.SH RETURN VALUES +Upon successful completion, the number of bytes +read from +.I buffer +is returned. +On error, 0 is returned and +.I errno +is set to indicate the error. +.SH ERRORS +.TP +.B EINVAL +The stored +.I .model +is not recognised. +.TP +.B EINVAL +The libcolour version, indicated by the first bytes in +.BR buffer , +is not recognised. +.SH SEE ALSO +.BR libcolour (7), +.BR libcolour_unmarshal (3) +.SH AUTHORS +Mattias Andrée +.RI < maandree@kth.se > |