diff options
author | Mattias Andrée <maandree@operamail.com> | 2014-09-11 10:15:09 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@operamail.com> | 2014-09-11 10:15:09 +0200 |
commit | f3cd54a50487fc623855001c22792ffa7cc58769 (patch) | |
tree | 90a1508c69d76449a6011b62f4380296eed9e406 | |
parent | m (diff) | |
download | mds-f3cd54a50487fc623855001c22792ffa7cc58769.tar.gz mds-f3cd54a50487fc623855001c22792ffa7cc58769.tar.bz2 mds-f3cd54a50487fc623855001c22792ffa7cc58769.tar.xz |
finish the gamma protocols
Signed-off-by: Mattias Andrée <maandree@operamail.com>
-rw-r--r-- | doc/info/mds.texinfo | 79 |
1 files changed, 76 insertions, 3 deletions
diff --git a/doc/info/mds.texinfo b/doc/info/mds.texinfo index a289439..b3e5e97 100644 --- a/doc/info/mds.texinfo +++ b/doc/info/mds.texinfo @@ -3293,7 +3293,45 @@ the gamma ramps to received. This is a signed 64-bit integer. @item Response: -TODO +The server will response with a @code{Command: error} +on error, unsuccess the server will respond with a +message contain the headers: +@table @code +@item Depth +The bit-depth of the gamma ramps. Possible values +are: 8, 16, 32 och 64. +@item Red size +The number of stops in the red gamma ramp. +@item Green size +The number of stops in the green gamma ramp. +@item Blue size +The number of stops in the blue gamma ramp. +@end table +These headers are included so you can make sure +the no metadata for gamma ramps have changed, +which could happen if the user switches between +hardware and software gamma ramps. +The response will also contain a @code{Length} +header and a message formatted in the same +manner as for @command{Command. set-gamma} +messages. That is, assuming as an example that +the gamma ramp depth is 16 bits, the red ramp +is (1, 2, 3, 4, 5, 6), the green ramp is (17, 18, 19, +20, 21, 22, 23) and the blue ramp is (33, 34, 35, 36, +37, 38, 39, 40) then the message will be (hexadecimal +representation): +@example +0001 0002 0003 0004 0005 0006 +0011 0012 0013 0014 0015 0016 0017 +0021 0022 0023 0024 0025 0026 0027 0028 +@end example + +On a big-endian system this would be: +@example +01 00 02 00 03 00 04 00 05 00 06 00 +11 00 12 00 13 00 14 00 15 00 16 00 17 00 +21 00 22 00 23 00 24 00 25 00 26 00 27 00 28 00 +@end example @item Purpose: Enable analysation and readings of the current @@ -3357,10 +3395,45 @@ Remove the filter now. @end table @item Conditionally required header: @code{Length} -TODO +The length of the message. +Available and required if @code{Lifespan: remove} +is not included in the message. @item Message: -TODO +The gamma ramps in binary encoding. As an example, +assume the gamma ramp depth is 16 bits, the red ramp +is (1, 2, 3, 4, 5, 6), the green ramp is (17, 18, 19, +20, 21, 22, 23) and the blue ramp is (33, 34, 35, 36, +37, 38, 39, 40) then the message will be (hexadecimal +representation): +@example +0001 0002 0003 0004 0005 0006 +0011 0012 0013 0014 0015 0016 0017 +0021 0022 0023 0024 0025 0026 0027 0028 +@end example + +Note that on a big-endian system this would be: +@footnote{x86_64 computers are big-endian.} +@example +01 00 02 00 03 00 04 00 05 00 06 00 +11 00 12 00 13 00 14 00 15 00 16 00 17 00 +21 00 22 00 23 00 24 00 25 00 26 00 27 00 28 00 +@end example + +It is up to the networking servers to translate +the encoding between machines.@footnote{The host +translates to big-endian unless they can confirm +that they have the same endianness.} + +The use of binary rather than text here is chosen +to increase performance for programs that try the +change the adjustments fluently. For programs +similar to @command{xgamma} that sets the ramps +once this is however unnessary. However it does +simplify the program code as one would only need +to write the ramps to the message without creating +a string with all stops converted and then measure +the length of that string. @item Response: The server will response with a @code{Command: error}. |