XKBgeom.h
上传用户:lctgjx
上传日期:2022-06-04
资源大小:8887k
文件大小:15k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /* $Xorg: XKBgeom.h,v 1.3 2000/08/18 04:05:45 coskrey Exp $ */
  2. /************************************************************
  3. Copyright (c) 1993 by Silicon Graphics Computer Systems, Inc.
  4. Permission to use, copy, modify, and distribute this
  5. software and its documentation for any purpose and without
  6. fee is hereby granted, provided that the above copyright
  7. notice appear in all copies and that both that copyright
  8. notice and this permission notice appear in supporting
  9. documentation, and that the name of Silicon Graphics not be 
  10. used in advertising or publicity pertaining to distribution 
  11. of the software without specific prior written permission.
  12. Silicon Graphics makes no representation about the suitability 
  13. of this software for any purpose. It is provided "as is"
  14. without any express or implied warranty.
  15. SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS 
  16. SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 
  17. AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
  18. GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL 
  19. DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 
  20. DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 
  21. OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION  WITH
  22. THE USE OR PERFORMANCE OF THIS SOFTWARE.
  23. ********************************************************/
  24. /* $XFree86: xc/include/extensions/XKBgeom.h,v 3.9 2002/09/18 17:11:40 tsi Exp $ */
  25. #ifndef _XKBGEOM_H_
  26. #define _XKBGEOM_H_
  27. #include <X11/extensions/XKBstr.h>
  28. #ifdef XKB_IN_SERVER
  29. #define XkbAddGeomKeyAlias  SrvXkbAddGeomKeyAlias
  30. #define XkbAddGeomColor  SrvXkbAddGeomColor
  31. #define XkbAddGeomDoodad SrvXkbAddGeomDoodad
  32. #define XkbAddGeomKey SrvXkbAddGeomKey
  33. #define XkbAddGeomOutline SrvXkbAddGeomOutline
  34. #define XkbAddGeomOverlay SrvXkbAddGeomOverlay
  35. #define XkbAddGeomOverlayRow SrvXkbAddGeomOverlayRow
  36. #define XkbAddGeomOverlayKey SrvXkbAddGeomOverlayKey
  37. #define XkbAddGeomProperty SrvXkbAddGeomProperty
  38. #define XkbAddGeomRow SrvXkbAddGeomRow
  39. #define XkbAddGeomSection SrvXkbAddGeomSection
  40. #define XkbAddGeomShape SrvXkbAddGeomShape
  41. #define XkbAllocGeomKeyAliases SrvXkbAllocGeomKeyAliases
  42. #define XkbAllocGeomColors SrvXkbAllocGeomColors
  43. #define XkbAllocGeomDoodads SrvXkbAllocGeomDoodads
  44. #define XkbAllocGeomKeys SrvXkbAllocGeomKeys
  45. #define XkbAllocGeomOutlines SrvXkbAllocGeomOutlines
  46. #define XkbAllocGeomPoints SrvXkbAllocGeomPoints
  47. #define XkbAllocGeomProps SrvXkbAllocGeomProps
  48. #define XkbAllocGeomRows SrvXkbAllocGeomRows
  49. #define XkbAllocGeomSectionDoodads SrvXkbAllocGeomSectionDoodads
  50. #define XkbAllocGeomSections SrvXkbAllocGeomSections
  51. #define XkbAllocGeomOverlays SrvXkbAllocGeomOverlays
  52. #define XkbAllocGeomOverlayRows SrvXkbAllocGeomOverlayRows
  53. #define XkbAllocGeomOverlayKeys SrvXkbAllocGeomOverlayKeys
  54. #define XkbAllocGeomShapes SrvXkbAllocGeomShapes
  55. #define XkbAllocGeometry SrvXkbAllocGeometry
  56. #define XkbFreeGeomKeyAliases SrvXkbFreeGeomKeyAliases
  57. #define XkbFreeGeomColors SrvXkbFreeGeomColors
  58. #define XkbFreeGeomDoodads SrvXkbFreeGeomDoodads
  59. #define XkbFreeGeomProperties SrvXkbFreeGeomProperties
  60. #define XkbFreeGeomOverlayKeys SrvXkbFreeGeomOverlayKeys
  61. #define XkbFreeGeomOverlayRows SrvXkbFreeGeomOverlayRows
  62. #define XkbFreeGeomOverlays SrvXkbFreeGeomOverlays
  63. #define XkbFreeGeomKeys SrvXkbFreeGeomKeys
  64. #define XkbFreeGeomRows SrvXkbFreeGeomRows
  65. #define XkbFreeGeomSections SrvXkbFreeGeomSections
  66. #define XkbFreeGeomPoints SrvXkbFreeGeomPoints
  67. #define XkbFreeGeomOutlines SrvXkbFreeGeomOutlines
  68. #define XkbFreeGeomShapes SrvXkbFreeGeomShapes
  69. #define XkbFreeGeometry SrvXkbFreeGeometry
  70. #endif
  71. typedef struct _XkbProperty {
  72. char *name;
  73. char *value;
  74. } XkbPropertyRec,*XkbPropertyPtr;
  75. typedef struct _XkbColor {
  76. unsigned int  pixel;
  77. char * spec;
  78. } XkbColorRec,*XkbColorPtr;
  79. typedef struct _XkbPoint {
  80. short x;
  81. short y;
  82. } XkbPointRec, *XkbPointPtr;
  83. typedef struct _XkbBounds {
  84. short x1,y1;
  85. short x2,y2;
  86. } XkbBoundsRec, *XkbBoundsPtr;
  87. #define XkbBoundsWidth(b) (((b)->x2)-((b)->x1))
  88. #define XkbBoundsHeight(b) (((b)->y2)-((b)->y1))
  89. typedef struct _XkbOutline {
  90. unsigned short num_points;
  91. unsigned short sz_points;
  92. unsigned short corner_radius;
  93. XkbPointPtr points;
  94. } XkbOutlineRec, *XkbOutlinePtr;
  95. typedef struct _XkbShape {
  96. Atom    name;
  97. unsigned short  num_outlines;
  98. unsigned short  sz_outlines;
  99. XkbOutlinePtr  outlines;
  100. XkbOutlinePtr  approx;
  101. XkbOutlinePtr  primary;
  102. XkbBoundsRec  bounds;
  103. } XkbShapeRec, *XkbShapePtr;
  104. #define XkbOutlineIndex(s,o) ((int)((o)-&(s)->outlines[0]))
  105. typedef struct _XkbShapeDoodad {
  106. Atom  name;
  107. unsigned char  type;
  108. unsigned char  priority;
  109. short  top;
  110. short  left;
  111. short    angle;
  112. unsigned short  color_ndx;
  113. unsigned short  shape_ndx;
  114. } XkbShapeDoodadRec, *XkbShapeDoodadPtr;
  115. #define XkbShapeDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
  116. #define XkbShapeDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
  117. #define XkbSetShapeDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
  118. #define XkbSetShapeDoodadShape(g,d,s) ((d)->shape_ndx= (s)-&(g)->shapes[0])
  119. typedef struct _XkbTextDoodad {
  120. Atom  name;
  121. unsigned char  type;
  122. unsigned char  priority;
  123. short    top;
  124. short    left;
  125. short    angle;
  126. short    width;
  127. short  height;
  128. unsigned short  color_ndx;
  129. char *  text;
  130. char *  font;
  131. } XkbTextDoodadRec, *XkbTextDoodadPtr;
  132. #define XkbTextDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
  133. #define XkbSetTextDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
  134. typedef struct _XkbIndicatorDoodad {
  135. Atom  name;
  136. unsigned char  type;
  137. unsigned char  priority;
  138. short    top;
  139. short    left;
  140. short  angle;
  141. unsigned short  shape_ndx;
  142. unsigned short  on_color_ndx;
  143. unsigned short  off_color_ndx;
  144. } XkbIndicatorDoodadRec, *XkbIndicatorDoodadPtr;
  145. #define XkbIndicatorDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
  146. #define XkbIndicatorDoodadOnColor(g,d) (&(g)->colors[(d)->on_color_ndx])
  147. #define XkbIndicatorDoodadOffColor(g,d) (&(g)->colors[(d)->off_color_ndx])
  148. #define XkbSetIndicatorDoodadOnColor(g,d,c) 
  149. ((d)->on_color_ndx= (c)-&(g)->colors[0])
  150. #define XkbSetIndicatorDoodadOffColor(g,d,c) 
  151. ((d)->off_color_ndx= (c)-&(g)->colors[0])
  152. #define XkbSetIndicatorDoodadShape(g,d,s) 
  153. ((d)->shape_ndx= (s)-&(g)->shapes[0])
  154. typedef struct _XkbLogoDoodad {
  155. Atom  name;
  156. unsigned char  type;
  157. unsigned char  priority;
  158. short  top;
  159. short  left;
  160. short    angle;
  161. unsigned short  color_ndx;
  162. unsigned short  shape_ndx;
  163. char *  logo_name;
  164. } XkbLogoDoodadRec, *XkbLogoDoodadPtr;
  165. #define XkbLogoDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
  166. #define XkbLogoDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
  167. #define XkbSetLogoDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
  168. #define XkbSetLogoDoodadShape(g,d,s) ((d)->shape_ndx= (s)-&(g)->shapes[0])
  169. typedef struct _XkbAnyDoodad {
  170. Atom  name;
  171. unsigned char  type;
  172. unsigned char  priority;
  173. short    top;
  174. short    left;
  175. short  angle;
  176. } XkbAnyDoodadRec, *XkbAnyDoodadPtr;
  177. typedef union _XkbDoodad {
  178. XkbAnyDoodadRec any;
  179. XkbShapeDoodadRec shape;
  180. XkbTextDoodadRec text;
  181. XkbIndicatorDoodadRec indicator;
  182. XkbLogoDoodadRec logo;
  183. } XkbDoodadRec, *XkbDoodadPtr;
  184. #define XkbUnknownDoodad 0
  185. #define XkbOutlineDoodad 1
  186. #define XkbSolidDoodad 2
  187. #define XkbTextDoodad 3
  188. #define XkbIndicatorDoodad 4
  189. #define XkbLogoDoodad 5
  190. typedef struct _XkbKey {
  191. XkbKeyNameRec  name;
  192. short  gap;
  193. unsigned char  shape_ndx;
  194. unsigned char  color_ndx;
  195. } XkbKeyRec, *XkbKeyPtr;
  196. #define XkbKeyShape(g,k) (&(g)->shapes[(k)->shape_ndx])
  197. #define XkbKeyColor(g,k) (&(g)->colors[(k)->color_ndx])
  198. #define XkbSetKeyShape(g,k,s) ((k)->shape_ndx= (s)-&(g)->shapes[0])
  199. #define XkbSetKeyColor(g,k,c) ((k)->color_ndx= (c)-&(g)->colors[0])
  200. typedef struct _XkbRow {
  201. short   top;
  202. short   left;
  203. unsigned short num_keys;
  204. unsigned short sz_keys;
  205. int vertical;
  206. XkbKeyPtr keys;
  207. XkbBoundsRec bounds;
  208. } XkbRowRec, *XkbRowPtr;
  209. typedef struct _XkbSection {
  210. Atom  name;
  211. unsigned char  priority;
  212. short    top;
  213. short    left;
  214. unsigned short  width;
  215. unsigned short  height;
  216. short    angle;
  217. unsigned short  num_rows;
  218. unsigned short  num_doodads;
  219. unsigned short  num_overlays;
  220. unsigned short  sz_rows;
  221. unsigned short  sz_doodads;
  222. unsigned short  sz_overlays;
  223. XkbRowPtr  rows;
  224. XkbDoodadPtr  doodads;
  225. XkbBoundsRec  bounds;
  226. struct _XkbOverlay *overlays;
  227. } XkbSectionRec, *XkbSectionPtr;
  228. typedef struct _XkbOverlayKey {
  229. XkbKeyNameRec over;
  230. XkbKeyNameRec under;
  231. } XkbOverlayKeyRec,*XkbOverlayKeyPtr;
  232. typedef struct _XkbOverlayRow {
  233. unsigned short row_under;
  234. unsigned short num_keys;
  235. unsigned short sz_keys;
  236. XkbOverlayKeyPtr keys;
  237. } XkbOverlayRowRec,*XkbOverlayRowPtr;
  238. typedef struct _XkbOverlay {
  239. Atom name;
  240. XkbSectionPtr section_under;
  241. unsigned short num_rows;
  242. unsigned short sz_rows;
  243. XkbOverlayRowPtr rows;
  244. XkbBoundsPtr bounds;
  245. } XkbOverlayRec,*XkbOverlayPtr;
  246. typedef struct _XkbGeometry {
  247. Atom  name;
  248. unsigned short  width_mm;
  249. unsigned short  height_mm;
  250. char *  label_font;
  251. XkbColorPtr  label_color;
  252. XkbColorPtr  base_color;
  253. unsigned short  sz_properties;
  254. unsigned short  sz_colors;
  255. unsigned short  sz_shapes;
  256. unsigned short   sz_sections;
  257. unsigned short  sz_doodads;
  258. unsigned short  sz_key_aliases;
  259. unsigned short  num_properties;
  260. unsigned short  num_colors;
  261. unsigned short  num_shapes;
  262. unsigned short  num_sections;
  263. unsigned short  num_doodads;
  264. unsigned short  num_key_aliases;
  265. XkbPropertyPtr  properties;
  266. XkbColorPtr  colors;
  267. XkbShapePtr  shapes;
  268. XkbSectionPtr  sections;
  269. XkbDoodadPtr  doodads;
  270. XkbKeyAliasPtr  key_aliases;
  271. } XkbGeometryRec;
  272. #define XkbGeomColorIndex(g,c) ((int)((c)-&(g)->colors[0]))
  273. #define XkbGeomPropertiesMask (1<<0)
  274. #define XkbGeomColorsMask (1<<1)
  275. #define XkbGeomShapesMask (1<<2)
  276. #define XkbGeomSectionsMask (1<<3)
  277. #define XkbGeomDoodadsMask (1<<4)
  278. #define XkbGeomKeyAliasesMask (1<<5)
  279. #define XkbGeomAllMask (0x3f)
  280. typedef struct _XkbGeometrySizes {
  281. unsigned int which;
  282. unsigned short num_properties;
  283. unsigned short num_colors;
  284. unsigned short num_shapes;
  285. unsigned short num_sections;
  286. unsigned short num_doodads;
  287. unsigned short num_key_aliases;
  288. } XkbGeometrySizesRec,*XkbGeometrySizesPtr;
  289. _XFUNCPROTOBEGIN
  290. extern XkbPropertyPtr
  291. XkbAddGeomProperty(
  292.     XkbGeometryPtr /* geom */,
  293.     char * /* name */,
  294.     char * /* value */
  295. );
  296. extern XkbKeyAliasPtr
  297. XkbAddGeomKeyAlias(
  298.     XkbGeometryPtr /* geom */,
  299.     char * /* alias */,
  300.     char * /* real */
  301. );
  302. extern XkbColorPtr
  303. XkbAddGeomColor(
  304.     XkbGeometryPtr /* geom */,
  305.     char * /* spec */,
  306.     unsigned int /* pixel */
  307. );
  308. extern XkbOutlinePtr
  309. XkbAddGeomOutline(
  310.     XkbShapePtr /* shape */,
  311.     int /* sz_points */
  312. );
  313. extern XkbShapePtr
  314. XkbAddGeomShape(
  315.     XkbGeometryPtr /* geom */,
  316.     Atom /* name */,
  317.     int /* sz_outlines */
  318. );
  319. extern XkbKeyPtr
  320. XkbAddGeomKey(
  321.     XkbRowPtr /* row */
  322. );
  323. extern XkbRowPtr
  324. XkbAddGeomRow(
  325.     XkbSectionPtr /* section */,
  326.     int /* sz_keys */
  327. );
  328. extern XkbSectionPtr
  329. XkbAddGeomSection(
  330.     XkbGeometryPtr /* geom */,
  331.     Atom /* name */,
  332.     int /* sz_rows */,
  333.     int /* sz_doodads */,
  334.     int /* sz_overlays */
  335. );
  336. extern XkbOverlayPtr
  337. XkbAddGeomOverlay(
  338.     XkbSectionPtr /* section */,
  339.     Atom /* name */,
  340.     int /* sz_rows */
  341. );
  342. extern XkbOverlayRowPtr
  343. XkbAddGeomOverlayRow(
  344.     XkbOverlayPtr /* overlay */,
  345.     int /* row_under */,
  346.     int /* sz_keys */
  347. );
  348. extern XkbOverlayKeyPtr
  349. XkbAddGeomOverlayKey(
  350.     XkbOverlayPtr /* overlay */,
  351.     XkbOverlayRowPtr /* row */,
  352.     char * /* over */,
  353.     char * /* under */
  354. );
  355. extern XkbDoodadPtr
  356. XkbAddGeomDoodad(
  357.     XkbGeometryPtr /* geom */,
  358.     XkbSectionPtr /* section */,
  359.     Atom /* name */
  360. );
  361. extern void
  362. XkbFreeGeomKeyAliases(
  363.     XkbGeometryPtr /* geom */,
  364.     int /* first */,
  365.     int /* count */,
  366.     Bool /* freeAll */
  367. );
  368. extern void
  369. XkbFreeGeomColors(
  370.     XkbGeometryPtr /* geom */,
  371.     int /* first */,
  372.     int /* count */,
  373.     Bool /* freeAll */
  374. );
  375. extern void
  376. XkbFreeGeomDoodads(
  377.     XkbDoodadPtr /* doodads */,
  378.     int /* nDoodads */,
  379.     Bool /* freeAll */
  380. );
  381. extern void
  382. XkbFreeGeomProperties(
  383.     XkbGeometryPtr /* geom */,
  384.     int /* first */,
  385.     int /* count */,
  386.     Bool /* freeAll */
  387. );
  388. extern void
  389. XkbFreeGeomOverlayKeys(
  390.     XkbOverlayRowPtr /* row */,
  391.     int /* first */,
  392.     int /* count */,
  393.     Bool /* freeAll */
  394. );
  395. extern void
  396. XkbFreeGeomOverlayRows(
  397.     XkbOverlayPtr /* overlay */,
  398.     int /* first */,
  399.     int /* count */,
  400.     Bool /* freeAll */
  401. );
  402. extern void
  403. XkbFreeGeomOverlays(
  404.     XkbSectionPtr /* section */,
  405.     int /* first */,
  406.     int /* count */,
  407.     Bool /* freeAll */
  408. );
  409. extern void
  410. XkbFreeGeomKeys(
  411.     XkbRowPtr /* row */,
  412.     int /* first */,
  413.     int /* count */,
  414.     Bool /* freeAll */
  415. );
  416. extern void
  417. XkbFreeGeomRows(
  418.     XkbSectionPtr /* section */,
  419.     int /* first */,
  420.     int /* count */,
  421.     Bool /* freeAll */
  422. );
  423. extern void
  424. XkbFreeGeomSections(
  425.     XkbGeometryPtr /* geom */,
  426.     int /* first */,
  427.     int /* count */,
  428.     Bool /* freeAll */
  429. );
  430. extern void
  431. XkbFreeGeomPoints(
  432.     XkbOutlinePtr /* outline */,
  433.     int /* first */,
  434.     int /* count */,
  435.     Bool /* freeAll */
  436. );
  437. extern void
  438. XkbFreeGeomOutlines(
  439.     XkbShapePtr /* shape */,
  440.     int /* first */,
  441.     int /* count */,
  442.     Bool /* freeAll */
  443. );
  444. extern void
  445. XkbFreeGeomShapes(
  446.     XkbGeometryPtr /* geom */,
  447.     int /* first */,
  448.     int /* count */,
  449.     Bool /* freeAll */
  450. );
  451. extern void
  452. XkbFreeGeometry(
  453.     XkbGeometryPtr /* geom */,
  454.     unsigned int /* which */,
  455.     Bool /* freeMap */
  456. );
  457. extern Status
  458. XkbAllocGeomProps(
  459.     XkbGeometryPtr /* geom */,
  460.     int /* nProps */
  461. );
  462. extern Status
  463. XkbAllocGeomKeyAliases(
  464.     XkbGeometryPtr /* geom */,
  465.     int /* nAliases */
  466. );
  467. extern Status
  468. XkbAllocGeomColors(
  469.     XkbGeometryPtr /* geom */,
  470.     int /* nColors */
  471. );
  472. extern Status
  473. XkbAllocGeomShapes(
  474.     XkbGeometryPtr /* geom */,
  475.     int /* nShapes */
  476. );
  477. extern Status
  478. XkbAllocGeomSections(
  479.     XkbGeometryPtr /* geom */,
  480.     int /* nSections */
  481. );
  482. extern Status
  483. XkbAllocGeomOverlays(
  484.     XkbSectionPtr /* section */,
  485.     int /* num_needed */
  486. );
  487. extern Status
  488. XkbAllocGeomOverlayRows(
  489.     XkbOverlayPtr /* overlay */,
  490.     int /* num_needed */
  491. );
  492. extern Status
  493. XkbAllocGeomOverlayKeys(
  494.     XkbOverlayRowPtr /* row */,
  495.     int /* num_needed */
  496. );
  497. extern Status
  498. XkbAllocGeomDoodads(
  499.     XkbGeometryPtr /* geom */,
  500.     int /* nDoodads */
  501. );
  502. extern Status
  503. XkbAllocGeomSectionDoodads(
  504.     XkbSectionPtr /* section */,
  505.     int /* nDoodads */
  506. );
  507. extern Status
  508. XkbAllocGeomOutlines(
  509.     XkbShapePtr /* shape */,
  510.     int /* nOL */
  511. );
  512. extern Status
  513. XkbAllocGeomRows(
  514.     XkbSectionPtr /* section */,
  515.     int /* nRows */
  516. );
  517. extern Status
  518. XkbAllocGeomPoints(
  519.     XkbOutlinePtr /* ol */,
  520.     int /* nPts */
  521. );
  522. extern Status
  523. XkbAllocGeomKeys(
  524.     XkbRowPtr /* row */,
  525.     int /* nKeys */
  526. );
  527. extern Status
  528. XkbAllocGeometry(
  529. XkbDescPtr /* xkb */,
  530. XkbGeometrySizesPtr /* sizes */
  531. );
  532. extern Status
  533. XkbSetGeometry(
  534. Display * /* dpy */,
  535. unsigned /* deviceSpec */,
  536. XkbGeometryPtr /* geom */
  537. );
  538. extern Bool
  539. XkbComputeShapeTop(
  540. XkbShapePtr /* shape */,
  541. XkbBoundsPtr /* bounds */
  542. );
  543. extern Bool
  544. XkbComputeShapeBounds(
  545. XkbShapePtr /* shape */
  546. );
  547. extern Bool
  548. XkbComputeRowBounds(
  549. XkbGeometryPtr /* geom */,
  550. XkbSectionPtr /* section */,
  551. XkbRowPtr /* row */
  552. );
  553. extern Bool
  554. XkbComputeSectionBounds(
  555. XkbGeometryPtr /* geom */,
  556. XkbSectionPtr /* section */
  557. );
  558. extern char *
  559. XkbFindOverlayForKey(
  560. XkbGeometryPtr /* geom */,
  561. XkbSectionPtr /* wanted */,
  562. char * /* under */
  563. );
  564. extern Status
  565. XkbGetGeometry(
  566.     Display * /* dpy */,
  567.     XkbDescPtr /* xkb */
  568. );
  569. extern Status
  570. XkbGetNamedGeometry(
  571.     Display * /* dpy */,
  572.     XkbDescPtr /* xkb */,
  573.     Atom /* name */
  574. );
  575. _XFUNCPROTOEND
  576. #endif /* _XKBSTR_H_ */