X-Git-Url: http://git.demorecorder.com/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=doc%2Fxml-xcb.txt;h=3c6a155194188c6e8e88f1fd70c9000673f8852d;hb=9d03507afa4354ce402333f94d01f6bcb2cf41e6;hp=feb99844f4d118784e49614f1c490f4f6af04549;hpb=e5b4ec6a39c7e73a9ad231fcba850efba2ed8302;p=free-sw%2Fxcb%2Fproto diff --git a/doc/xml-xcb.txt b/doc/xml-xcb.txt index feb9984..3c6a155 100644 --- a/doc/xml-xcb.txt +++ b/doc/xml-xcb.txt @@ -225,8 +225,17 @@ enum; the value is restricted to one of the constants named in the enum. defining the set of values included, and a list containing these values. value-mask-type gives the type of the bitmask; this must be CARD16 or CARD32. value-mask-name gives the field name of the bitmask, and - value-list-name gives the field name of the list of values. + value-list-name gives the field name of the list of values. Please use + instead for new protocol definitions. + switch expression + bitcase expression, fields + + This element represents conditional inclusion of fields. It can be viewed + as sequence of multiple ifs: if ( switch expression & bitcase expression ) + is equal to bitcase expression, bitcase fields are included in structure. + It can be used only as the last field of structure. New protocol definitions + should prefer to use this instead of . Expressions ----------- @@ -256,3 +265,22 @@ Expressions The bit element represents a literal bitmask value in an expression. The integer must be in the range 0..31, expanding to (1<enum item identifier + + This element represents a reference to item of enum. + +expression + + This element represents a unary operator, with the op attribute specifying + which operator. The only supported operation so far is ~, and its semantic + is identical to the corresponding operator in C. + + + + This element represents a sumation of the elements of the referenced list. + +expression + + This element represents the number of bits set in the expression. +