[Xcb] [PATCH] sync: Change value list param of CreateAlarm and ChangeAlarm into switch
Daniel Martin
consume.noise at gmail.com
Sun Jun 23 04:35:19 PDT 2013
On Fri, Jun 21, 2013 at 02:13:40PM +0100, Louis-Francis Ratté-Boulianne wrote:
> Values for "Value" and "Delta" fields are 64-bit that couldn't be passed through a regular value list/mask.
>
> It does break the API, but CreateAlarm and ChangeAlarm are unusable without that change.
> ---
> src/sync.xml | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++------
> 1 file changed, 58 insertions(+), 6 deletions(-)
>
> diff --git a/src/sync.xml b/src/sync.xml
> index 516d149..d65c6c2 100644
> --- a/src/sync.xml
> +++ b/src/sync.xml
> @@ -134,16 +134,68 @@ for licensing information.
>
> <request name="CreateAlarm" opcode="8">
> <field type="ALARM" name="id" />
> - <valueparam value-mask-type="CARD32"
> - value-mask-name="value_mask"
> - value-list-name="value_list" />
> + <field type="CARD32" name="value_mask" mask="CA" />
> + <switch name="value_list">
> + <fieldref>value_mask</fieldref>
> + <bitcase>
> + <enumref ref="CA">Counter</enumref>
> + <field type="COUNTER" name="counter" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">ValueType</enumref>
> + <field type="CARD32" name="valueType" mask="VALUETYPE" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">Value</enumref>
> + <field type="INT64" name="value" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">TestType</enumref>
> + <field type="CARD32" name="testType" mask="TESTTYPE" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">Delta</enumref>
> + <field type="INT64" name="delta" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">Events</enumref>
> + <field type="BOOL" name="events" />
> + <pad bytes="3" />
> + </bitcase>
> + </switch>
> </request>
>
> <request name="ChangeAlarm" opcode="9">
> <field type="ALARM" name="id" />
> - <valueparam value-mask-type="CARD32"
> - value-mask-name="value_mask"
> - value-list-name="value_list" />
> + <field type="CARD32" name="value_mask" mask="CA" />
> + <switch name="value_list">
> + <fieldref>value_mask</fieldref>
> + <bitcase>
> + <enumref ref="CA">Counter</enumref>
> + <field type="COUNTER" name="counter" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">ValueType</enumref>
> + <field type="CARD32" name="valueType" mask="VALUETYPE" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">Value</enumref>
> + <field type="INT64" name="value" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">TestType</enumref>
> + <field type="CARD32" name="testType" mask="TESTTYPE" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">Delta</enumref>
> + <field type="INT64" name="delta" />
> + </bitcase>
> + <bitcase>
> + <enumref ref="CA">Events</enumref>
> + <field type="BOOL" name="events" />
> + <pad bytes="3" />
> + </bitcase>
> + </switch>
> </request>
>
> <request name="DestroyAlarm" opcode="11">
> --
> 1.7.10.4
Reviewed-by: Daniel Martin <consume.noise at gmail.com>
You've forgotten to add a Signed-off-by tag. Do you give the permission
to add it when applying the patch to the repo or could you send a
version of the patch with the tag?
Thanks for the patch,
Daniel Martin
More information about the Xcb
mailing list